summaryrefslogtreecommitdiffstats
path: root/crypto/sparcv9cap.c
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2011-11-14 20:48:35 +0000
committerAndy Polyakov <appro@openssl.org>2011-11-14 20:48:35 +0000
commit5d9bb428bbe6c83e78ac06d20feb492025cc4955 (patch)
tree7cee5183ce1e0b0a1b3944bca8507101ae347911 /crypto/sparcv9cap.c
parent9833757b5d8683cc2e92ab45115794bc2bd9e66c (diff)
SPARCv9 assembler pack update from HEAD.
Diffstat (limited to 'crypto/sparcv9cap.c')
-rw-r--r--crypto/sparcv9cap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/crypto/sparcv9cap.c b/crypto/sparcv9cap.c
index ed195ab402..a35976bd4d 100644
--- a/crypto/sparcv9cap.c
+++ b/crypto/sparcv9cap.c
@@ -19,7 +19,8 @@ int bn_mul_mont(BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *bp, const BN_U
int bn_mul_mont_fpu(BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *bp, const BN_ULONG *np,const BN_ULONG *n0, int num);
int bn_mul_mont_int(BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *bp, const BN_ULONG *np,const BN_ULONG *n0, int num);
- if ((OPENSSL_sparcv9cap_P&(SPARCV9_PREFER_FPU|SPARCV9_VIS1)) ==
+ if (num>=8 && !(num&1) &&
+ (OPENSSL_sparcv9cap_P&(SPARCV9_PREFER_FPU|SPARCV9_VIS1)) ==
(SPARCV9_PREFER_FPU|SPARCV9_VIS1))
return bn_mul_mont_fpu(rp,ap,bp,np,n0,num);
else