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