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_wipe_cpu 69.type OPENSSL_wipe_cpu,@function 70.align 4 71OPENSSL_wipe_cpu: 72.localentry OPENSSL_wipe_cpu,0 73 74 xor 0,0,0 75 fmr 0,31 76 fmr 1,31 77 fmr 2,31 78 mr 3,1 79 fmr 3,31 80 xor 4,4,4 81 fmr 4,31 82 xor 5,5,5 83 fmr 5,31 84 xor 6,6,6 85 fmr 6,31 86 xor 7,7,7 87 fmr 7,31 88 xor 8,8,8 89 fmr 8,31 90 xor 9,9,9 91 fmr 9,31 92 xor 10,10,10 93 fmr 10,31 94 xor 11,11,11 95 fmr 11,31 96 xor 12,12,12 97 fmr 12,31 98 fmr 13,31 99 blr 100.long 0 101.byte 0,12,0x14,0,0,0,0,0 102.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu 103 104.globl OPENSSL_atomic_add 105.type OPENSSL_atomic_add,@function 106.align 4 107OPENSSL_atomic_add: 108.localentry OPENSSL_atomic_add,0 109 110.Ladd: lwarx 5,0,3 111 add 0,4,5 112 stwcx. 0,0,3 113 bne- .Ladd 114 extsw 3,0 115 blr 116.long 0 117.byte 0,12,0x14,0,0,0,2,0 118.long 0 119.size OPENSSL_atomic_add,.-OPENSSL_atomic_add 120 121.globl OPENSSL_rdtsc_mftb 122.type OPENSSL_rdtsc_mftb,@function 123.align 4 124OPENSSL_rdtsc_mftb: 125.localentry OPENSSL_rdtsc_mftb,0 126 127 mftb 3 128 blr 129.long 0 130.byte 0,12,0x14,0,0,0,0,0 131.size OPENSSL_rdtsc_mftb,.-OPENSSL_rdtsc_mftb 132 133.globl OPENSSL_rdtsc_mfspr268 134.type OPENSSL_rdtsc_mfspr268,@function 135.align 4 136OPENSSL_rdtsc_mfspr268: 137.localentry OPENSSL_rdtsc_mfspr268,0 138 139 mfspr 3,268 140 blr 141.long 0 142.byte 0,12,0x14,0,0,0,0,0 143.size OPENSSL_rdtsc_mfspr268,.-OPENSSL_rdtsc_mfspr268 144 145.globl OPENSSL_cleanse 146.type OPENSSL_cleanse,@function 147.align 4 148OPENSSL_cleanse: 149.localentry OPENSSL_cleanse,0 150 151 cmpldi 4,7 152 li 0,0 153 bge .Lot 154 cmpldi 4,0 155 .long 0x4DC20020 156.Little: mtctr 4 157 stb 0,0(3) 158 addi 3,3,1 159 bdnz $-8 160 blr 161.Lot: andi. 5,3,3 162 beq .Laligned 163 stb 0,0(3) 164 subi 4,4,1 165 addi 3,3,1 166 b .Lot 167.Laligned: 168 srdi 5,4,2 169 mtctr 5 170 stw 0,0(3) 171 addi 3,3,4 172 bdnz $-8 173 andi. 4,4,3 174 bne .Little 175 blr 176.long 0 177.byte 0,12,0x14,0,0,0,2,0 178.long 0 179.size OPENSSL_cleanse,.-OPENSSL_cleanse 180 181.globl CRYPTO_memcmp 182.type CRYPTO_memcmp,@function 183.align 4 184CRYPTO_memcmp: 185.localentry CRYPTO_memcmp,0 186 187 cmpldi 5,0 188 li 0,0 189 beq .Lno_data 190 mtctr 5 191.Loop_cmp: 192 lbz 6,0(3) 193 addi 3,3,1 194 lbz 7,0(4) 195 addi 4,4,1 196 xor 6,6,7 197 or 0,0,6 198 bdnz .Loop_cmp 199 200.Lno_data: 201 li 3,0 202 sub 3,3,0 203 extrwi 3,3,1,0 204 blr 205.long 0 206.byte 0,12,0x14,0,0,0,3,0 207.long 0 208.size CRYPTO_memcmp,.-CRYPTO_memcmp 209.globl OPENSSL_instrument_bus_mftb 210.type OPENSSL_instrument_bus_mftb,@function 211.align 4 212OPENSSL_instrument_bus_mftb: 213.localentry OPENSSL_instrument_bus_mftb,0 214 215 mtctr 4 216 217 mftb 7 218 li 8,0 219 220 dcbf 0,3 221 lwarx 6,0,3 222 add 6,6,8 223 stwcx. 6,0,3 224 stwx 6,0,3 225 226.Loop: mftb 6 227 sub 8,6,7 228 mr 7,6 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 addi 3,3,4 235 bdnz .Loop 236 237 mr 3,4 238 blr 239.long 0 240.byte 0,12,0x14,0,0,0,2,0 241.long 0 242.size OPENSSL_instrument_bus_mftb,.-OPENSSL_instrument_bus_mftb 243 244.globl OPENSSL_instrument_bus2_mftb 245.type OPENSSL_instrument_bus2_mftb,@function 246.align 4 247OPENSSL_instrument_bus2_mftb: 248.localentry OPENSSL_instrument_bus2_mftb,0 249 250 mr 0,4 251 slwi 4,4,2 252 253 mftb 7 254 li 8,0 255 256 dcbf 0,3 257 lwarx 6,0,3 258 add 6,6,8 259 stwcx. 6,0,3 260 stwx 6,0,3 261 262 mftb 6 263 sub 8,6,7 264 mr 7,6 265 mr 9,8 266.Loop2: 267 dcbf 0,3 268 lwarx 6,0,3 269 add 6,6,8 270 stwcx. 6,0,3 271 stwx 6,0,3 272 273 addic. 5,5,-1 274 beq .Ldone2 275 276 mftb 6 277 sub 8,6,7 278 mr 7,6 279 cmplw 7,8,9 280 mr 9,8 281 282 mfcr 6 283 not 6,6 284 rlwinm 6,6,1,29,29 285 286 sub. 4,4,6 287 add 3,3,6 288 bne .Loop2 289 290.Ldone2: 291 srwi 4,4,2 292 sub 3,0,4 293 blr 294.long 0 295.byte 0,12,0x14,0,0,0,3,0 296.long 0 297.size OPENSSL_instrument_bus2_mftb,.-OPENSSL_instrument_bus2_mftb 298 299.globl OPENSSL_instrument_bus_mfspr268 300.type OPENSSL_instrument_bus_mfspr268,@function 301.align 4 302OPENSSL_instrument_bus_mfspr268: 303.localentry OPENSSL_instrument_bus_mfspr268,0 304 305 mtctr 4 306 307 mfspr 7,268 308 li 8,0 309 310 dcbf 0,3 311 lwarx 6,0,3 312 add 6,6,8 313 stwcx. 6,0,3 314 stwx 6,0,3 315 316.Loop3: mfspr 6,268 317 sub 8,6,7 318 mr 7,6 319 dcbf 0,3 320 lwarx 6,0,3 321 add 6,6,8 322 stwcx. 6,0,3 323 stwx 6,0,3 324 addi 3,3,4 325 bdnz .Loop3 326 327 mr 3,4 328 blr 329.long 0 330.byte 0,12,0x14,0,0,0,2,0 331.long 0 332.size OPENSSL_instrument_bus_mfspr268,.-OPENSSL_instrument_bus_mfspr268 333 334.globl OPENSSL_instrument_bus2_mfspr268 335.type OPENSSL_instrument_bus2_mfspr268,@function 336.align 4 337OPENSSL_instrument_bus2_mfspr268: 338.localentry OPENSSL_instrument_bus2_mfspr268,0 339 340 mr 0,4 341 slwi 4,4,2 342 343 mfspr 7,268 344 li 8,0 345 346 dcbf 0,3 347 lwarx 6,0,3 348 add 6,6,8 349 stwcx. 6,0,3 350 stwx 6,0,3 351 352 mfspr 6,268 353 sub 8,6,7 354 mr 7,6 355 mr 9,8 356.Loop4: 357 dcbf 0,3 358 lwarx 6,0,3 359 add 6,6,8 360 stwcx. 6,0,3 361 stwx 6,0,3 362 363 addic. 5,5,-1 364 beq .Ldone4 365 366 mfspr 6,268 367 sub 8,6,7 368 mr 7,6 369 cmplw 7,8,9 370 mr 9,8 371 372 mfcr 6 373 not 6,6 374 rlwinm 6,6,1,29,29 375 376 sub. 4,4,6 377 add 3,3,6 378 bne .Loop4 379 380.Ldone4: 381 srwi 4,4,2 382 sub 3,0,4 383 blr 384.long 0 385.byte 0,12,0x14,0,0,0,3,0 386.long 0 387.size OPENSSL_instrument_bus2_mfspr268,.-OPENSSL_instrument_bus2_mfspr268 388