Loading crypto/bn/asm/sparcv9-mont.pl +2 −11 Original line number Diff line number Diff line Loading @@ -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] Loading Loading @@ -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 Loading crypto/sparcv9cap.c +5 −4 Original line number Diff line number Diff line Loading @@ -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; Loading Loading
crypto/bn/asm/sparcv9-mont.pl +2 −11 Original line number Diff line number Diff line Loading @@ -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] Loading Loading @@ -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 Loading
crypto/sparcv9cap.c +5 −4 Original line number Diff line number Diff line Loading @@ -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; Loading