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:46:45 +0200 |
commit | ec65b83d6568db494b17e155018d4a7bf9db5268 (patch) | |
tree | 1bb7a6c884238bf08bb4a800bf765a62596efd94 /crypto/bn | |
parent | d169bf9cab0ba1b04f0250e617b0acd8afb9bd19 (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/bn')
-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 e22968d4a3..abb1570853 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 */ |