diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libcrypto/bn/asm/ppc.pl | 2 | ||||
-rwxr-xr-x | lib/libcrypto/bn/asm/x86-mont.pl | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/libcrypto/bn/asm/ppc.pl b/lib/libcrypto/bn/asm/ppc.pl index 37c65d35111..f4093177e62 100644 --- a/lib/libcrypto/bn/asm/ppc.pl +++ b/lib/libcrypto/bn/asm/ppc.pl @@ -949,7 +949,7 @@ $data=<<EOF; addze r11,r0 #mul_add_c(a[3],b[2],c3,c1,c2); $LD r6,`3*$BNSZ`(r4) - $LD r7,`2*$BNSZ`(r4) + $LD r7,`2*$BNSZ`(r5) $UMULL r8,r6,r7 $UMULH r9,r6,r7 addc r12,r8,r12 diff --git a/lib/libcrypto/bn/asm/x86-mont.pl b/lib/libcrypto/bn/asm/x86-mont.pl index 5cd3cd2ed50..e8f6b050842 100755 --- a/lib/libcrypto/bn/asm/x86-mont.pl +++ b/lib/libcrypto/bn/asm/x86-mont.pl @@ -527,8 +527,10 @@ $sbit=$num; &jle (&label("sqradd")); &mov ($carry,"edx"); - &lea ("edx",&DWP(0,$sbit,"edx",2)); + &add ("edx","edx"); &shr ($carry,31); + &add ("edx",$sbit); + &adc ($carry,0); &set_label("sqrlast"); &mov ($word,$_n0); &mov ($inp,$_np); |