crypto/sparc*: elininate _sparcv9_rdwrasi [from HEAD], original from Andy.
authorDr. Stephen Henson <steve@openssl.org>
Mon, 5 Jul 2010 22:22:22 +0000 (22:22 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Mon, 5 Jul 2010 22:22:22 +0000 (22:22 +0000)
crypto/sparccpuid.S
crypto/sparcv9cap.c

index 1140b5c559b4b844c475da2ce3262e432525ec3a..e53c7fad611ccd00ecbd3d674f8ec3625a901ddf 100644 (file)
@@ -232,23 +232,13 @@ _sparcv9_rdtick:
 .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
+       add     %sp,BIAS+2,%o0
        retl
-       nop
+       .word   0xc19a1a40      !ldda   [%o0]ASI_FP16_P,%f0
 .type  _sparcv9_vis1_probe,#function
 .size  _sparcv9_vis1_probe,.-_sparcv9_vis1_probe
 
index 1d820f4c0ab41356ac0fec4c77f4a9769adb3dba..630803625066abb33bce08220b9fd48e7d39acc5 100644 (file)
@@ -27,7 +27,6 @@ int bn_mul_mont(BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *bp, const BN_U
        }
 
 unsigned long  _sparcv9_rdtick(void);
-unsigned long  _sparcv9_rdwrasi(unsigned long);
 void           _sparcv9_vis1_probe(void);
 
 unsigned long OPENSSL_rdtsc(void)
@@ -150,7 +149,6 @@ void OPENSSL_cpuid_setup(void)
        char *e;
        struct sigaction        common_act,ill_oact,bus_oact;
        sigset_t                all_masked,oset;
-       unsigned long           oasi;
        int                     sig;
  
        if ((e=getenv("OPENSSL_sparcv9cap")))
@@ -179,7 +177,6 @@ void OPENSSL_cpuid_setup(void)
 
        sigaction(SIGILL,&common_act,&ill_oact);
        sigaction(SIGBUS,&common_act,&bus_oact);/* T1 fails 16-bit ldda */
-       oasi = _sparcv9_rdwrasi(0xD2);          /* ASI_FL16_P */
        if ((sig=sigsetjmp(common_jmp,0)) == 0)
                {
                _sparcv9_vis1_probe();
@@ -193,7 +190,6 @@ void OPENSSL_cpuid_setup(void)
                {
                OPENSSL_sparcv9cap_P &= ~SPARCV9_VIS1;
                }
-       _sparcv9_rdwrasi(oasi);
        sigaction(SIGBUS,&bus_oact,NULL);
        sigaction(SIGILL,&ill_oact,NULL);