summaryrefslogtreecommitdiffstats
path: root/crypto/bn
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2001-03-27 22:30:46 +0000
committerAndy Polyakov <appro@openssl.org>2001-03-27 22:30:46 +0000
commit500230ee94ef5fc9d08b3cf7c92996f4366f1584 (patch)
tree0b0557aa0d6cb60a654c2896597c71a63221beb1 /crypto/bn
parent347177e052616821d81bcb389faf9764fc8bd65d (diff)
The IRIX fix. Asm recap and corresponding declation.
Submitted by: Reviewed by: PR:
Diffstat (limited to 'crypto/bn')
-rw-r--r--crypto/bn/asm/mips3.s8
-rw-r--r--crypto/bn/bn_div.c1
2 files changed, 5 insertions, 4 deletions
diff --git a/crypto/bn/asm/mips3.s b/crypto/bn/asm/mips3.s
index 2df4dcd4b0..45786c00a5 100644
--- a/crypto/bn/asm/mips3.s
+++ b/crypto/bn/asm/mips3.s
@@ -586,13 +586,13 @@ LEAF(bn_div_3_words)
ld a0,(a3)
move ta2,a1
ld a1,-8(a3)
- move ta3,ra
- move v1,zero
+ bne a0,a2,.L_bn_div_3_words_proceed
li v0,-1
- beq a0,a2,.L_bn_div_3_words_skip_div
+ jr ra
+.L_bn_div_3_words_proceed:
+ move ta3,ra
bal bn_div_words
move ra,ta3
-.L_bn_div_3_words_skip_div:
dmultu ta2,v0
ld t2,-16(a3)
move ta0,zero
diff --git a/crypto/bn/bn_div.c b/crypto/bn/bn_div.c
index bbd0994008..d0b68dc246 100644
--- a/crypto/bn/bn_div.c
+++ b/crypto/bn/bn_div.c
@@ -250,6 +250,7 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
{
BN_ULONG q,l0;
#if defined(BN_DIV3W) && !defined(OPENSSL_NO_ASM)
+ BN_ULONG bn_div_3_words(BN_ULONG*,BN_ULONG,BN_ULONG);
q=bn_div_3_words(wnump,d1,d0);
#else
BN_ULONG n0,n1,rem=0;