summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2011-12-09 14:28:48 +0000
committerAndy Polyakov <appro@openssl.org>2011-12-09 14:28:48 +0000
commit2ee77d36a092618264ad29e7d47f76c15c138b40 (patch)
tree7cec6721f1ee1b34d5209eabaeeb6029d7a4ca53 /crypto
parent24f441e0bb5b6187b648f7afacde0c0ed2a515e6 (diff)
x86-mont.pl: fix bug in integer-only squaring path [from HEAD].
PR: 2648
Diffstat (limited to 'crypto')
-rw-r--r--crypto/bn/asm/mo-586.pl4
1 files changed, 3 insertions, 1 deletions
diff --git a/crypto/bn/asm/mo-586.pl b/crypto/bn/asm/mo-586.pl
index 0982293094..061127e0b1 100644
--- a/crypto/bn/asm/mo-586.pl
+++ b/crypto/bn/asm/mo-586.pl
@@ -539,8 +539,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);