diff options
author | Andy Polyakov <appro@openssl.org> | 2005-12-27 21:27:39 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2005-12-27 21:27:39 +0000 |
commit | 7a5dbeb7825159d47c3f39e86ade38465687704e (patch) | |
tree | 7159eb9837cf08f49c21dfd60ace59464c54ae9b | |
parent | 6c06918ede75af1967a113e44336d1bfef50fa19 (diff) |
Minor sparcv9 clean-ups.
-rw-r--r-- | crypto/bn/asm/sparcv9-mont.pl | 13 | ||||
-rw-r--r-- | crypto/sparcv9cap.c | 9 |
2 files changed, 7 insertions, 15 deletions
diff --git a/crypto/bn/asm/sparcv9-mont.pl b/crypto/bn/asm/sparcv9-mont.pl index 2e12eeb578..acdf6928ca 100644 --- a/crypto/bn/asm/sparcv9-mont.pl +++ b/crypto/bn/asm/sparcv9-mont.pl @@ -94,17 +94,17 @@ $fname: cmp $ap,$bp and $num,$mask,$num ld [$bp],$mul0 ! bp[0] - be,pt `$bits==32?"%icc":"%xcc"`,.Lbn_sqr_mont nop add %sp,$bias,%o7 ! real top of stack - ld [$ap],$car0 ! ap[0] + ld [$ap],$car0 ! ap[0] ! redundant in squaring context sub %o7,$num,%o7 ld [$ap+4],$apj ! ap[1] and %o7,-1024,%o7 ld [$np],$car1 ! np[0] sub %o7,$bias,%sp ! alloca ld [$np+4],$npj ! np[1] + be,pt `$bits==32?"%icc":"%xcc"`,.Lbn_sqr_mont mov 12,$j mulx $car0,$mul0,$car0 ! ap[0]*bp[0] @@ -306,15 +306,6 @@ $sbit="%i2"; # re-use $bp! $code.=<<___; .align 32 .Lbn_sqr_mont: - add %sp,$bias,%o7 ! real top of stack - ld [$ap+4],$apj ! ap[1] - sub %o7,$num,%o7 - ld [$np],$car1 ! np[0] - and %o7,-1024,%o7 - ld [$np+4],$npj ! np[1] - sub %o7,$bias,%sp ! alloca - mov 12,$j - mulx $mul0,$mul0,$car0 ! ap[0]*ap[0] mulx $apj,$mul0,$tmp0 !prologue! and $car0,$mask,$acc0 diff --git a/crypto/sparcv9cap.c b/crypto/sparcv9cap.c index 3330b21746..3ec2340241 100644 --- a/crypto/sparcv9cap.c +++ b/crypto/sparcv9cap.c @@ -55,21 +55,22 @@ static int walk_nodename(di_node_t node, di_node_name_t di_node_name) /* This is expected to catch all UltraSPARC flavors prior T1 */ if (!strcmp (name,"SUNW,UltraSPARC") || - !strncmp(name,"SUNW,UltraSPARC-I",17)) + !strncmp(name,"SUNW,UltraSPARC-I",17)) /* covers II,III,IV */ { OPENSSL_sparcv9cap_P |= SPARCV9_PREFER_FPU|SPARCV9_VIS1; - /* %tick is privileged only on UltraSPARC-I/II */ + /* %tick is privileged only on UltraSPARC-I/II, but not IIe */ if (name[14]!='\0' && name[17]!='\0' && name[18]!='\0') OPENSSL_sparcv9cap_P &= ~SPARCV9_TICK_PRIVILEGED; return DI_WALK_TERMINATE; } - /* This is expected to catch remaining UltraSPARC T1 */ + /* This is expected to catch remaining UltraSPARCs, such as T1 */ else if (!strncmp(name,"SUNW,UltraSPARC",15)) { - OPENSSL_sparcv9cap_P |= SPARCV9_VIS1; OPENSSL_sparcv9cap_P &= ~SPARCV9_TICK_PRIVILEGED; + + return DI_WALK_TERMINATE; } return DI_WALK_CONTINUE; |