summaryrefslogtreecommitdiffstats
path: root/libtommath/bn_mp_div.c
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2010-09-03 08:33:33 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2010-09-03 08:38:42 +0200
commit7f4d9adf958f00805e60a353d2779434aca36fe2 (patch)
tree2b92aa777465e63a78fa3cc3365399f2768da6e1 /libtommath/bn_mp_div.c
parent9ecba820b90c85bd927fbb18fabe0f6fc8f97141 (diff)
downloadkernel-crypto-7f4d9adf958f00805e60a353d2779434aca36fe2.tar.gz
kernel-crypto-7f4d9adf958f00805e60a353d2779434aca36fe2.tar.xz
kernel-crypto-7f4d9adf958f00805e60a353d2779434aca36fe2.zip
Optimizations for 32bit machines by using a 64bit word type and 32bit digit.
Unfortunately we cannot do the same for 64bit since we don't have an 128bit type in kernel.
Diffstat (limited to 'libtommath/bn_mp_div.c')
-rw-r--r--libtommath/bn_mp_div.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libtommath/bn_mp_div.c b/libtommath/bn_mp_div.c
index aee9c94324d..723c8b503dd 100644
--- a/libtommath/bn_mp_div.c
+++ b/libtommath/bn_mp_div.c
@@ -195,7 +195,7 @@ int mp_div (mp_int * a, mp_int * b, mp_int * c, mp_int * d)
mp_word tmp;
tmp = ((mp_word) x.dp[i]) << ((mp_word) DIGIT_BIT);
tmp |= ((mp_word) x.dp[i - 1]);
- tmp /= ((mp_word) y.dp[t]);
+ tmp = word_div_int(tmp, (int)y.dp[t]);
if (tmp > (mp_word) MP_MASK)
tmp = MP_MASK;
q.dp[i - t - 1] = (mp_digit) (tmp & (mp_word) (MP_MASK));