summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2014-09-25 00:42:26 +0200
committerJanusz Kozerski <j.kozerski@samsung.com>2014-10-20 15:26:05 +0200
commitc33f9f360180d1c223daf4bbaa855b237eba7edf (patch)
treeb1b921320981fe053d25ec3da3b9bf705d0e965f
parent92577784c1835d48eff647467182bb78c79448c5 (diff)
downloadopenssl-c33f9f360180d1c223daf4bbaa855b237eba7edf.tar.gz
openssl-c33f9f360180d1c223daf4bbaa855b237eba7edf.tar.bz2
openssl-c33f9f360180d1c223daf4bbaa855b237eba7edf.zip
crypto/bn/bn_nist.c: work around MSC ARM compiler bug.
RT: 3541 Reviewed-by: Emilia Kasper <emilia@openssl.org> (cherry picked from commit 8b07c005fe006044d0e4a795421447deca3c9f2c)
-rw-r--r--crypto/bn/bn_nist.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/crypto/bn/bn_nist.c b/crypto/bn/bn_nist.c
index e22968d..abb1570 100644
--- a/crypto/bn/bn_nist.c
+++ b/crypto/bn/bn_nist.c
@@ -1088,9 +1088,9 @@ int BN_nist_mod_521(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
/* ... and right shift */
for (val=t_d[0],i=0; i<BN_NIST_521_TOP-1; i++)
{
- tmp = val>>BN_NIST_521_RSHIFT;
- val = t_d[i+1];
- t_d[i] = (tmp | val<<BN_NIST_521_LSHIFT) & BN_MASK2;
+ t_d[i] = ( val>>BN_NIST_521_RSHIFT |
+ (tmp=t_d[i+1])<<BN_NIST_521_LSHIFT ) & BN_MASK2;
+ val=tmp;
}
t_d[i] = val>>BN_NIST_521_RSHIFT;
/* lower 521 bits */