mirror of
https://github.com/openssl/openssl.git
synced 2024-11-21 01:15:20 +08:00
sparccpuid.s update.
This commit is contained in:
parent
9c200f5471
commit
aa5c99fa01
@ -235,7 +235,7 @@ _sparcv9_rdtick:
|
|||||||
.global OPENSSL_cleanse
|
.global OPENSSL_cleanse
|
||||||
.align 32
|
.align 32
|
||||||
OPENSSL_cleanse:
|
OPENSSL_cleanse:
|
||||||
cmp %o1,6
|
cmp %o1,14
|
||||||
nop
|
nop
|
||||||
#ifdef ABI64
|
#ifdef ABI64
|
||||||
bgu %xcc,.Lot
|
bgu %xcc,.Lot
|
||||||
@ -253,23 +253,53 @@ OPENSSL_cleanse:
|
|||||||
nop
|
nop
|
||||||
.align 32
|
.align 32
|
||||||
.Lot:
|
.Lot:
|
||||||
andcc %o0,3,%g0
|
#ifndef ABI64
|
||||||
bz .Laligned
|
subcc %g0,1,%g1
|
||||||
|
! see above for explanation
|
||||||
|
.word 0x83408000 !rd %ccr,%g1
|
||||||
|
cmp %g1,0x99
|
||||||
|
bne .v8lot
|
||||||
|
nop
|
||||||
|
#endif
|
||||||
|
|
||||||
|
.v9lot: andcc %o0,7,%g0
|
||||||
|
bz .v9aligned
|
||||||
nop
|
nop
|
||||||
stb %g0,[%o0]
|
stb %g0,[%o0]
|
||||||
sub %o1,1,%o1
|
sub %o1,1,%o1
|
||||||
ba .Lot
|
ba .v9lot
|
||||||
|
add %o0,1,%o0
|
||||||
|
.align 16,0x01000000
|
||||||
|
.v9aligned:
|
||||||
|
.word 0xc0720000 !stx %g0,[%o0]
|
||||||
|
sub %o1,8,%o1
|
||||||
|
andcc %o1,-8,%g0
|
||||||
|
#ifdef ABI64
|
||||||
|
.word 0x126ffffd !bnz %xcc,.v9aligned
|
||||||
|
#else
|
||||||
|
.word 0x124ffffd !bnz %icc,.v9aligned
|
||||||
|
#endif
|
||||||
|
add %o0,8,%o0
|
||||||
|
|
||||||
|
cmp %o1,0
|
||||||
|
bne .Little
|
||||||
|
nop
|
||||||
|
retl
|
||||||
|
nop
|
||||||
|
#ifndef ABI64
|
||||||
|
.v8lot: andcc %o0,3,%g0
|
||||||
|
bz .v8aligned
|
||||||
|
nop
|
||||||
|
stb %g0,[%o0]
|
||||||
|
sub %o1,1,%o1
|
||||||
|
ba .v8lot
|
||||||
add %o0,1,%o0
|
add %o0,1,%o0
|
||||||
nop
|
nop
|
||||||
.Laligned:
|
.v8aligned:
|
||||||
st %g0,[%o0]
|
st %g0,[%o0]
|
||||||
sub %o1,4,%o1
|
sub %o1,4,%o1
|
||||||
andcc %o1,-4,%g0
|
andcc %o1,-4,%g0
|
||||||
#ifdef ABI64
|
bnz .v8aligned
|
||||||
bnz %xcc,.Laligned
|
|
||||||
#else
|
|
||||||
bnz .Laligned
|
|
||||||
#endif
|
|
||||||
add %o0,4,%o0
|
add %o0,4,%o0
|
||||||
|
|
||||||
cmp %o1,0
|
cmp %o1,0
|
||||||
@ -277,6 +307,7 @@ OPENSSL_cleanse:
|
|||||||
nop
|
nop
|
||||||
retl
|
retl
|
||||||
nop
|
nop
|
||||||
|
#endif
|
||||||
.type OPENSSL_cleanse,#function
|
.type OPENSSL_cleanse,#function
|
||||||
.size OPENSSL_cleanse,.-OPENSSL_cleanse
|
.size OPENSSL_cleanse,.-OPENSSL_cleanse
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user