1*3a608692SPiotr Kubaj/* Do not modify. This file is auto-generated from ppccpuid.pl. */ 2*3a608692SPiotr Kubaj.machine "any" 3*3a608692SPiotr Kubaj.text 4*3a608692SPiotr Kubaj 5*3a608692SPiotr Kubaj.globl OPENSSL_fpu_probe 6*3a608692SPiotr Kubaj.type OPENSSL_fpu_probe,@function 7*3a608692SPiotr Kubaj.align 4 8*3a608692SPiotr KubajOPENSSL_fpu_probe: 9*3a608692SPiotr Kubaj fmr 0,0 10*3a608692SPiotr Kubaj blr 11*3a608692SPiotr Kubaj.long 0 12*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 13*3a608692SPiotr Kubaj.size OPENSSL_fpu_probe,.-OPENSSL_fpu_probe 14*3a608692SPiotr Kubaj.globl OPENSSL_ppc64_probe 15*3a608692SPiotr Kubaj.type OPENSSL_ppc64_probe,@function 16*3a608692SPiotr Kubaj.align 4 17*3a608692SPiotr KubajOPENSSL_ppc64_probe: 18*3a608692SPiotr Kubaj fcfid 1,1 19*3a608692SPiotr Kubaj rldicl 0,0,32,32 20*3a608692SPiotr Kubaj blr 21*3a608692SPiotr Kubaj.long 0 22*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 23*3a608692SPiotr Kubaj.size OPENSSL_ppc64_probe,.-OPENSSL_ppc64_probe 24*3a608692SPiotr Kubaj 25*3a608692SPiotr Kubaj.globl OPENSSL_altivec_probe 26*3a608692SPiotr Kubaj.type OPENSSL_altivec_probe,@function 27*3a608692SPiotr Kubaj.align 4 28*3a608692SPiotr KubajOPENSSL_altivec_probe: 29*3a608692SPiotr Kubaj.long 0x10000484 30*3a608692SPiotr Kubaj blr 31*3a608692SPiotr Kubaj.long 0 32*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 33*3a608692SPiotr Kubaj.size OPENSSL_altivec_probe,.-OPENSSL_altivec_probe 34*3a608692SPiotr Kubaj 35*3a608692SPiotr Kubaj.globl OPENSSL_crypto207_probe 36*3a608692SPiotr Kubaj.type OPENSSL_crypto207_probe,@function 37*3a608692SPiotr Kubaj.align 4 38*3a608692SPiotr KubajOPENSSL_crypto207_probe: 39*3a608692SPiotr Kubaj .long 0x7C000E99 40*3a608692SPiotr Kubaj .long 0x10000508 41*3a608692SPiotr Kubaj blr 42*3a608692SPiotr Kubaj.long 0 43*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 44*3a608692SPiotr Kubaj.size OPENSSL_crypto207_probe,.-OPENSSL_crypto207_probe 45*3a608692SPiotr Kubaj 46*3a608692SPiotr Kubaj.globl OPENSSL_madd300_probe 47*3a608692SPiotr Kubaj.type OPENSSL_madd300_probe,@function 48*3a608692SPiotr Kubaj.align 4 49*3a608692SPiotr KubajOPENSSL_madd300_probe: 50*3a608692SPiotr Kubaj xor 0,0,0 51*3a608692SPiotr Kubaj .long 0x10600033 52*3a608692SPiotr Kubaj .long 0x10600031 53*3a608692SPiotr Kubaj blr 54*3a608692SPiotr Kubaj.long 0 55*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 56*3a608692SPiotr Kubaj 57*3a608692SPiotr Kubaj.globl OPENSSL_wipe_cpu 58*3a608692SPiotr Kubaj.type OPENSSL_wipe_cpu,@function 59*3a608692SPiotr Kubaj.align 4 60*3a608692SPiotr KubajOPENSSL_wipe_cpu: 61*3a608692SPiotr Kubaj xor 0,0,0 62*3a608692SPiotr Kubaj fmr 0,31 63*3a608692SPiotr Kubaj fmr 1,31 64*3a608692SPiotr Kubaj fmr 2,31 65*3a608692SPiotr Kubaj mr 3,1 66*3a608692SPiotr Kubaj fmr 3,31 67*3a608692SPiotr Kubaj xor 4,4,4 68*3a608692SPiotr Kubaj fmr 4,31 69*3a608692SPiotr Kubaj xor 5,5,5 70*3a608692SPiotr Kubaj fmr 5,31 71*3a608692SPiotr Kubaj xor 6,6,6 72*3a608692SPiotr Kubaj fmr 6,31 73*3a608692SPiotr Kubaj xor 7,7,7 74*3a608692SPiotr Kubaj fmr 7,31 75*3a608692SPiotr Kubaj xor 8,8,8 76*3a608692SPiotr Kubaj fmr 8,31 77*3a608692SPiotr Kubaj xor 9,9,9 78*3a608692SPiotr Kubaj fmr 9,31 79*3a608692SPiotr Kubaj xor 10,10,10 80*3a608692SPiotr Kubaj fmr 10,31 81*3a608692SPiotr Kubaj xor 11,11,11 82*3a608692SPiotr Kubaj fmr 11,31 83*3a608692SPiotr Kubaj xor 12,12,12 84*3a608692SPiotr Kubaj fmr 12,31 85*3a608692SPiotr Kubaj fmr 13,31 86*3a608692SPiotr Kubaj blr 87*3a608692SPiotr Kubaj.long 0 88*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 89*3a608692SPiotr Kubaj.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu 90*3a608692SPiotr Kubaj 91*3a608692SPiotr Kubaj.globl OPENSSL_atomic_add 92*3a608692SPiotr Kubaj.type OPENSSL_atomic_add,@function 93*3a608692SPiotr Kubaj.align 4 94*3a608692SPiotr KubajOPENSSL_atomic_add: 95*3a608692SPiotr Kubaj.Ladd: lwarx 5,0,3 96*3a608692SPiotr Kubaj add 0,4,5 97*3a608692SPiotr Kubaj stwcx. 0,0,3 98*3a608692SPiotr Kubaj bne- .Ladd 99*3a608692SPiotr Kubaj mr 3,0 100*3a608692SPiotr Kubaj blr 101*3a608692SPiotr Kubaj.long 0 102*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,2,0 103*3a608692SPiotr Kubaj.long 0 104*3a608692SPiotr Kubaj.size OPENSSL_atomic_add,.-OPENSSL_atomic_add 105*3a608692SPiotr Kubaj 106*3a608692SPiotr Kubaj.globl OPENSSL_rdtsc_mftb 107*3a608692SPiotr Kubaj.type OPENSSL_rdtsc_mftb,@function 108*3a608692SPiotr Kubaj.align 4 109*3a608692SPiotr KubajOPENSSL_rdtsc_mftb: 110*3a608692SPiotr Kubaj mftb 3 111*3a608692SPiotr Kubaj blr 112*3a608692SPiotr Kubaj.long 0 113*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 114*3a608692SPiotr Kubaj.size OPENSSL_rdtsc_mftb,.-OPENSSL_rdtsc_mftb 115*3a608692SPiotr Kubaj 116*3a608692SPiotr Kubaj.globl OPENSSL_rdtsc_mfspr268 117*3a608692SPiotr Kubaj.type OPENSSL_rdtsc_mfspr268,@function 118*3a608692SPiotr Kubaj.align 4 119*3a608692SPiotr KubajOPENSSL_rdtsc_mfspr268: 120*3a608692SPiotr Kubaj mfspr 3,268 121*3a608692SPiotr Kubaj blr 122*3a608692SPiotr Kubaj.long 0 123*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,0,0 124*3a608692SPiotr Kubaj.size OPENSSL_rdtsc_mfspr268,.-OPENSSL_rdtsc_mfspr268 125*3a608692SPiotr Kubaj 126*3a608692SPiotr Kubaj.globl OPENSSL_cleanse 127*3a608692SPiotr Kubaj.type OPENSSL_cleanse,@function 128*3a608692SPiotr Kubaj.align 4 129*3a608692SPiotr KubajOPENSSL_cleanse: 130*3a608692SPiotr Kubaj cmplwi 4,7 131*3a608692SPiotr Kubaj li 0,0 132*3a608692SPiotr Kubaj bge .Lot 133*3a608692SPiotr Kubaj cmplwi 4,0 134*3a608692SPiotr Kubaj .long 0x4DC20020 135*3a608692SPiotr Kubaj.Little: mtctr 4 136*3a608692SPiotr Kubaj stb 0,0(3) 137*3a608692SPiotr Kubaj addi 3,3,1 138*3a608692SPiotr Kubaj bdnz $-8 139*3a608692SPiotr Kubaj blr 140*3a608692SPiotr Kubaj.Lot: andi. 5,3,3 141*3a608692SPiotr Kubaj beq .Laligned 142*3a608692SPiotr Kubaj stb 0,0(3) 143*3a608692SPiotr Kubaj subi 4,4,1 144*3a608692SPiotr Kubaj addi 3,3,1 145*3a608692SPiotr Kubaj b .Lot 146*3a608692SPiotr Kubaj.Laligned: 147*3a608692SPiotr Kubaj srwi 5,4,2 148*3a608692SPiotr Kubaj mtctr 5 149*3a608692SPiotr Kubaj stw 0,0(3) 150*3a608692SPiotr Kubaj addi 3,3,4 151*3a608692SPiotr Kubaj bdnz $-8 152*3a608692SPiotr Kubaj andi. 4,4,3 153*3a608692SPiotr Kubaj bne .Little 154*3a608692SPiotr Kubaj blr 155*3a608692SPiotr Kubaj.long 0 156*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,2,0 157*3a608692SPiotr Kubaj.long 0 158*3a608692SPiotr Kubaj.size OPENSSL_cleanse,.-OPENSSL_cleanse 159*3a608692SPiotr Kubaj 160*3a608692SPiotr Kubaj.globl CRYPTO_memcmp 161*3a608692SPiotr Kubaj.type CRYPTO_memcmp,@function 162*3a608692SPiotr Kubaj.align 4 163*3a608692SPiotr KubajCRYPTO_memcmp: 164*3a608692SPiotr Kubaj cmplwi 5,0 165*3a608692SPiotr Kubaj li 0,0 166*3a608692SPiotr Kubaj beq .Lno_data 167*3a608692SPiotr Kubaj mtctr 5 168*3a608692SPiotr Kubaj.Loop_cmp: 169*3a608692SPiotr Kubaj lbz 6,0(3) 170*3a608692SPiotr Kubaj addi 3,3,1 171*3a608692SPiotr Kubaj lbz 7,0(4) 172*3a608692SPiotr Kubaj addi 4,4,1 173*3a608692SPiotr Kubaj xor 6,6,7 174*3a608692SPiotr Kubaj or 0,0,6 175*3a608692SPiotr Kubaj bdnz .Loop_cmp 176*3a608692SPiotr Kubaj 177*3a608692SPiotr Kubaj.Lno_data: 178*3a608692SPiotr Kubaj li 3,0 179*3a608692SPiotr Kubaj sub 3,3,0 180*3a608692SPiotr Kubaj extrwi 3,3,1,0 181*3a608692SPiotr Kubaj blr 182*3a608692SPiotr Kubaj.long 0 183*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,3,0 184*3a608692SPiotr Kubaj.long 0 185*3a608692SPiotr Kubaj.size CRYPTO_memcmp,.-CRYPTO_memcmp 186*3a608692SPiotr Kubaj.globl OPENSSL_instrument_bus_mftb 187*3a608692SPiotr Kubaj.type OPENSSL_instrument_bus_mftb,@function 188*3a608692SPiotr Kubaj.align 4 189*3a608692SPiotr KubajOPENSSL_instrument_bus_mftb: 190*3a608692SPiotr Kubaj mtctr 4 191*3a608692SPiotr Kubaj 192*3a608692SPiotr Kubaj mftb 7 193*3a608692SPiotr Kubaj li 8,0 194*3a608692SPiotr Kubaj 195*3a608692SPiotr Kubaj dcbf 0,3 196*3a608692SPiotr Kubaj lwarx 6,0,3 197*3a608692SPiotr Kubaj add 6,6,8 198*3a608692SPiotr Kubaj stwcx. 6,0,3 199*3a608692SPiotr Kubaj stwx 6,0,3 200*3a608692SPiotr Kubaj 201*3a608692SPiotr Kubaj.Loop: mftb 6 202*3a608692SPiotr Kubaj sub 8,6,7 203*3a608692SPiotr Kubaj mr 7,6 204*3a608692SPiotr Kubaj dcbf 0,3 205*3a608692SPiotr Kubaj lwarx 6,0,3 206*3a608692SPiotr Kubaj add 6,6,8 207*3a608692SPiotr Kubaj stwcx. 6,0,3 208*3a608692SPiotr Kubaj stwx 6,0,3 209*3a608692SPiotr Kubaj addi 3,3,4 210*3a608692SPiotr Kubaj bdnz .Loop 211*3a608692SPiotr Kubaj 212*3a608692SPiotr Kubaj mr 3,4 213*3a608692SPiotr Kubaj blr 214*3a608692SPiotr Kubaj.long 0 215*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,2,0 216*3a608692SPiotr Kubaj.long 0 217*3a608692SPiotr Kubaj.size OPENSSL_instrument_bus_mftb,.-OPENSSL_instrument_bus_mftb 218*3a608692SPiotr Kubaj 219*3a608692SPiotr Kubaj.globl OPENSSL_instrument_bus2_mftb 220*3a608692SPiotr Kubaj.type OPENSSL_instrument_bus2_mftb,@function 221*3a608692SPiotr Kubaj.align 4 222*3a608692SPiotr KubajOPENSSL_instrument_bus2_mftb: 223*3a608692SPiotr Kubaj mr 0,4 224*3a608692SPiotr Kubaj slwi 4,4,2 225*3a608692SPiotr Kubaj 226*3a608692SPiotr Kubaj mftb 7 227*3a608692SPiotr Kubaj li 8,0 228*3a608692SPiotr Kubaj 229*3a608692SPiotr Kubaj dcbf 0,3 230*3a608692SPiotr Kubaj lwarx 6,0,3 231*3a608692SPiotr Kubaj add 6,6,8 232*3a608692SPiotr Kubaj stwcx. 6,0,3 233*3a608692SPiotr Kubaj stwx 6,0,3 234*3a608692SPiotr Kubaj 235*3a608692SPiotr Kubaj mftb 6 236*3a608692SPiotr Kubaj sub 8,6,7 237*3a608692SPiotr Kubaj mr 7,6 238*3a608692SPiotr Kubaj mr 9,8 239*3a608692SPiotr Kubaj.Loop2: 240*3a608692SPiotr Kubaj dcbf 0,3 241*3a608692SPiotr Kubaj lwarx 6,0,3 242*3a608692SPiotr Kubaj add 6,6,8 243*3a608692SPiotr Kubaj stwcx. 6,0,3 244*3a608692SPiotr Kubaj stwx 6,0,3 245*3a608692SPiotr Kubaj 246*3a608692SPiotr Kubaj addic. 5,5,-1 247*3a608692SPiotr Kubaj beq .Ldone2 248*3a608692SPiotr Kubaj 249*3a608692SPiotr Kubaj mftb 6 250*3a608692SPiotr Kubaj sub 8,6,7 251*3a608692SPiotr Kubaj mr 7,6 252*3a608692SPiotr Kubaj .long 0x7f884840 253*3a608692SPiotr Kubaj mr 9,8 254*3a608692SPiotr Kubaj 255*3a608692SPiotr Kubaj mfcr 6 256*3a608692SPiotr Kubaj not 6,6 257*3a608692SPiotr Kubaj rlwinm 6,6,1,29,29 258*3a608692SPiotr Kubaj 259*3a608692SPiotr Kubaj sub. 4,4,6 260*3a608692SPiotr Kubaj add 3,3,6 261*3a608692SPiotr Kubaj bne .Loop2 262*3a608692SPiotr Kubaj 263*3a608692SPiotr Kubaj.Ldone2: 264*3a608692SPiotr Kubaj srwi 4,4,2 265*3a608692SPiotr Kubaj sub 3,0,4 266*3a608692SPiotr Kubaj blr 267*3a608692SPiotr Kubaj.long 0 268*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,3,0 269*3a608692SPiotr Kubaj.long 0 270*3a608692SPiotr Kubaj.size OPENSSL_instrument_bus2_mftb,.-OPENSSL_instrument_bus2_mftb 271*3a608692SPiotr Kubaj 272*3a608692SPiotr Kubaj.globl OPENSSL_instrument_bus_mfspr268 273*3a608692SPiotr Kubaj.type OPENSSL_instrument_bus_mfspr268,@function 274*3a608692SPiotr Kubaj.align 4 275*3a608692SPiotr KubajOPENSSL_instrument_bus_mfspr268: 276*3a608692SPiotr Kubaj mtctr 4 277*3a608692SPiotr Kubaj 278*3a608692SPiotr Kubaj mfspr 7,268 279*3a608692SPiotr Kubaj li 8,0 280*3a608692SPiotr Kubaj 281*3a608692SPiotr Kubaj dcbf 0,3 282*3a608692SPiotr Kubaj lwarx 6,0,3 283*3a608692SPiotr Kubaj add 6,6,8 284*3a608692SPiotr Kubaj stwcx. 6,0,3 285*3a608692SPiotr Kubaj stwx 6,0,3 286*3a608692SPiotr Kubaj 287*3a608692SPiotr Kubaj.Loop3: mfspr 6,268 288*3a608692SPiotr Kubaj sub 8,6,7 289*3a608692SPiotr Kubaj mr 7,6 290*3a608692SPiotr Kubaj dcbf 0,3 291*3a608692SPiotr Kubaj lwarx 6,0,3 292*3a608692SPiotr Kubaj add 6,6,8 293*3a608692SPiotr Kubaj stwcx. 6,0,3 294*3a608692SPiotr Kubaj stwx 6,0,3 295*3a608692SPiotr Kubaj addi 3,3,4 296*3a608692SPiotr Kubaj bdnz .Loop3 297*3a608692SPiotr Kubaj 298*3a608692SPiotr Kubaj mr 3,4 299*3a608692SPiotr Kubaj blr 300*3a608692SPiotr Kubaj.long 0 301*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,2,0 302*3a608692SPiotr Kubaj.long 0 303*3a608692SPiotr Kubaj.size OPENSSL_instrument_bus_mfspr268,.-OPENSSL_instrument_bus_mfspr268 304*3a608692SPiotr Kubaj 305*3a608692SPiotr Kubaj.globl OPENSSL_instrument_bus2_mfspr268 306*3a608692SPiotr Kubaj.type OPENSSL_instrument_bus2_mfspr268,@function 307*3a608692SPiotr Kubaj.align 4 308*3a608692SPiotr KubajOPENSSL_instrument_bus2_mfspr268: 309*3a608692SPiotr Kubaj mr 0,4 310*3a608692SPiotr Kubaj slwi 4,4,2 311*3a608692SPiotr Kubaj 312*3a608692SPiotr Kubaj mfspr 7,268 313*3a608692SPiotr Kubaj li 8,0 314*3a608692SPiotr Kubaj 315*3a608692SPiotr Kubaj dcbf 0,3 316*3a608692SPiotr Kubaj lwarx 6,0,3 317*3a608692SPiotr Kubaj add 6,6,8 318*3a608692SPiotr Kubaj stwcx. 6,0,3 319*3a608692SPiotr Kubaj stwx 6,0,3 320*3a608692SPiotr Kubaj 321*3a608692SPiotr Kubaj mfspr 6,268 322*3a608692SPiotr Kubaj sub 8,6,7 323*3a608692SPiotr Kubaj mr 7,6 324*3a608692SPiotr Kubaj mr 9,8 325*3a608692SPiotr Kubaj.Loop4: 326*3a608692SPiotr Kubaj dcbf 0,3 327*3a608692SPiotr Kubaj lwarx 6,0,3 328*3a608692SPiotr Kubaj add 6,6,8 329*3a608692SPiotr Kubaj stwcx. 6,0,3 330*3a608692SPiotr Kubaj stwx 6,0,3 331*3a608692SPiotr Kubaj 332*3a608692SPiotr Kubaj addic. 5,5,-1 333*3a608692SPiotr Kubaj beq .Ldone4 334*3a608692SPiotr Kubaj 335*3a608692SPiotr Kubaj mfspr 6,268 336*3a608692SPiotr Kubaj sub 8,6,7 337*3a608692SPiotr Kubaj mr 7,6 338*3a608692SPiotr Kubaj .long 0x7f884840 339*3a608692SPiotr Kubaj mr 9,8 340*3a608692SPiotr Kubaj 341*3a608692SPiotr Kubaj mfcr 6 342*3a608692SPiotr Kubaj not 6,6 343*3a608692SPiotr Kubaj rlwinm 6,6,1,29,29 344*3a608692SPiotr Kubaj 345*3a608692SPiotr Kubaj sub. 4,4,6 346*3a608692SPiotr Kubaj add 3,3,6 347*3a608692SPiotr Kubaj bne .Loop4 348*3a608692SPiotr Kubaj 349*3a608692SPiotr Kubaj.Ldone4: 350*3a608692SPiotr Kubaj srwi 4,4,2 351*3a608692SPiotr Kubaj sub 3,0,4 352*3a608692SPiotr Kubaj blr 353*3a608692SPiotr Kubaj.long 0 354*3a608692SPiotr Kubaj.byte 0,12,0x14,0,0,0,3,0 355*3a608692SPiotr Kubaj.long 0 356*3a608692SPiotr Kubaj.size OPENSSL_instrument_bus2_mfspr268,.-OPENSSL_instrument_bus2_mfspr268 357