diff options
author | Andy Polyakov <appro@openssl.org> | 2018-06-08 15:02:39 +0200 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2018-06-09 14:49:45 +0200 |
commit | bd45a8d1ef338027e6892a7c886a373a4fafbf7d (patch) | |
tree | 40b82cc33545bafb0fe6e3fe0d824a8829ef2a90 /crypto/bn | |
parent | 278f65eeabb28279661927ecbcc23e95aad34948 (diff) |
bn/asm/sparcv9-mont.pl: iron another glitch in squaring code path.
This module is used only with odd input lengths, i.e. not used in normal
PKI cases, on contemporary processors. The problem was "illuminated" by
fuzzing tests.
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6440)
(cherry picked from commit f55ef97b5c0f8559f393b72ebd4b2de32ad6d231)
Diffstat (limited to 'crypto/bn')
-rw-r--r-- | crypto/bn/asm/sparcv9-mont.pl | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/crypto/bn/asm/sparcv9-mont.pl b/crypto/bn/asm/sparcv9-mont.pl index 30db95e157..2043ab04af 100644 --- a/crypto/bn/asm/sparcv9-mont.pl +++ b/crypto/bn/asm/sparcv9-mont.pl @@ -483,6 +483,9 @@ $code.=<<___; mulx $npj,$mul1,$acc1 add $tpj,$car1,$car1 ld [$np+$j],$npj ! np[j] + srlx $car1,32,$tmp0 + and $car1,$mask,$car1 + add $tmp0,$sbit,$sbit add $acc0,$car1,$car1 ld [$tp+8],$tpj ! tp[j] add $acc1,$car1,$car1 |