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