From 5711dd8eacf9e3c97fec97389e95cc84601d3f88 Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Fri, 9 Dec 2011 14:21:25 +0000 Subject: [PATCH] x86-mont.pl: fix bug in integer-only squaring path. PR: 2648 --- crypto/bn/asm/x86-mont.pl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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); -- 2.34.1