From 40b6d4938742d8199f1191a116915623b2f79c8b Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Mon, 5 Jul 2010 22:20:36 +0000 Subject: SPARCv9 assembler pack: refine CPU detection on Linux, fix for "unaligned opcodes detected in executable segment" error [from HEAD], original from Andy. --- crypto/sparccpuid.S | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'crypto/sparccpuid.S') diff --git a/crypto/sparccpuid.S b/crypto/sparccpuid.S index aa8b11efc9..1140b5c559 100644 --- a/crypto/sparccpuid.S +++ b/crypto/sparccpuid.S @@ -225,13 +225,33 @@ _sparcv9_rdtick: xor %o0,%o0,%o0 .word 0x91410000 !rd %tick,%o0 retl - .word 0x93323020 !srlx %o2,32,%o1 + .word 0x93323020 !srlx %o0,32,%o1 .notick: retl xor %o1,%o1,%o1 .type _sparcv9_rdtick,#function .size _sparcv9_rdtick,.-_sparcv9_rdtick +.global _sparcv9_rdwrasi +.align 8 +_sparcv9_rdwrasi: + .word 0x9340c000 !rd %asi,%o1 + .word 0x87820000 !wr %o0,%g0,%asi + retl + mov %o1,%o0 +.type _sparcv9_rdwrasi,#function +.size _sparcv9_rdwrasi,.-_sparcv9_rdwrasi + +.global _sparcv9_vis1_probe +.align 8 +_sparcv9_vis1_probe: + .word 0x81b00c20 !fzeros %f0 + .word 0xc19ba002+BIAS !ldda [%sp+BIAS+2]%asi,%f0 + retl + nop +.type _sparcv9_vis1_probe,#function +.size _sparcv9_vis1_probe,.-_sparcv9_vis1_probe + .global OPENSSL_cleanse .align 32 OPENSSL_cleanse: -- cgit v1.2.3