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