diff options
author | Andy Polyakov <appro@openssl.org> | 2014-09-25 00:42:26 +0200 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2014-09-25 00:48:40 +0200 |
commit | 1db72876dc605b8dedb24711c69e2d4bab159c78 (patch) | |
tree | 4611ecf1ad6f150aae92888c69d19f1f4d7be3b0 /crypto | |
parent | b55ff319f880adc874b8c95957adf2003117d42b (diff) |
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)
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/bn/bn_nist.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crypto/bn/bn_nist.c b/crypto/bn/bn_nist.c index c6de032696..904bd110c1 100644 --- a/crypto/bn/bn_nist.c +++ b/crypto/bn/bn_nist.c @@ -824,9 +824,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 */ |