diff options
author | Andy Polyakov <appro@openssl.org> | 2011-12-09 14:21:25 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2011-12-09 14:21:25 +0000 |
commit | 5711dd8eacf9e3c97fec97389e95cc84601d3f88 (patch) | |
tree | 8a9d889c23ddf4599065c682f2f17d8500c7560b /crypto/bn/asm/x86-mont.pl | |
parent | 990390ab52598835591691d1e9f8a44037f6bb5d (diff) |
x86-mont.pl: fix bug in integer-only squaring path.
PR: 2648
Diffstat (limited to 'crypto/bn/asm/x86-mont.pl')
-rwxr-xr-x | crypto/bn/asm/x86-mont.pl | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/crypto/bn/asm/x86-mont.pl b/crypto/bn/asm/x86-mont.pl index 5cd3cd2ed5..e8f6b05084 100755 --- a/crypto/bn/asm/x86-mont.pl +++ b/crypto/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); |