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