1*60662d10Schristos.machine "any" 2*60662d10Schristos.text 3*60662d10Schristos 4*60662d10Schristos.globl sha256_block_ppc 5*60662d10Schristos.align 6 6*60662d10Schristossha256_block_ppc: 7*60662d10Schristos stdu 1,-320(1) 8*60662d10Schristos mflr 0 9*60662d10Schristos sldi 5,5,6 10*60662d10Schristos 11*60662d10Schristos std 3,144(1) 12*60662d10Schristos 13*60662d10Schristos std 14,176(1) 14*60662d10Schristos std 15,184(1) 15*60662d10Schristos std 16,192(1) 16*60662d10Schristos std 17,200(1) 17*60662d10Schristos std 18,208(1) 18*60662d10Schristos std 19,216(1) 19*60662d10Schristos std 20,224(1) 20*60662d10Schristos std 21,232(1) 21*60662d10Schristos std 22,240(1) 22*60662d10Schristos std 23,248(1) 23*60662d10Schristos std 24,256(1) 24*60662d10Schristos std 25,264(1) 25*60662d10Schristos std 26,272(1) 26*60662d10Schristos std 27,280(1) 27*60662d10Schristos std 28,288(1) 28*60662d10Schristos std 29,296(1) 29*60662d10Schristos std 30,304(1) 30*60662d10Schristos std 31,312(1) 31*60662d10Schristos std 0,336(1) 32*60662d10Schristos lwz 8,0(3) 33*60662d10Schristos mr 31,4 34*60662d10Schristos lwz 9,4(3) 35*60662d10Schristos lwz 10,8(3) 36*60662d10Schristos lwz 11,12(3) 37*60662d10Schristos lwz 12,16(3) 38*60662d10Schristos lwz 6,20(3) 39*60662d10Schristos lwz 14,24(3) 40*60662d10Schristos lwz 15,28(3) 41*60662d10Schristos bl LPICmeup 42*60662d10SchristosLPICedup: 43*60662d10Schristos andi. 0,31,3 44*60662d10Schristos bne Lunaligned 45*60662d10SchristosLaligned: 46*60662d10Schristos add 5,31,5 47*60662d10Schristos std 5,128(1) 48*60662d10Schristos std 31,136(1) 49*60662d10Schristos bl Lsha2_block_private 50*60662d10Schristos b Ldone 51*60662d10Schristos 52*60662d10Schristos 53*60662d10Schristos 54*60662d10Schristos 55*60662d10Schristos 56*60662d10Schristos 57*60662d10Schristos 58*60662d10Schristos.align 4 59*60662d10SchristosLunaligned: 60*60662d10Schristos subfic 0,31,4096 61*60662d10Schristos andi. 0,0,4032 62*60662d10Schristos beq Lcross_page 63*60662d10Schristos cmpld 5,0 64*60662d10Schristos ble Laligned 65*60662d10Schristos subfc 5,0,5 66*60662d10Schristos add 0,31,0 67*60662d10Schristos std 5,120(1) 68*60662d10Schristos std 0,128(1) 69*60662d10Schristos std 31,136(1) 70*60662d10Schristos bl Lsha2_block_private 71*60662d10Schristos 72*60662d10Schristos ld 5,120(1) 73*60662d10SchristosLcross_page: 74*60662d10Schristos li 0,16 75*60662d10Schristos mtctr 0 76*60662d10Schristos addi 20,1,48 77*60662d10SchristosLmemcpy: 78*60662d10Schristos lbz 16,0(31) 79*60662d10Schristos lbz 17,1(31) 80*60662d10Schristos lbz 18,2(31) 81*60662d10Schristos lbz 19,3(31) 82*60662d10Schristos addi 31,31,4 83*60662d10Schristos stb 16,0(20) 84*60662d10Schristos stb 17,1(20) 85*60662d10Schristos stb 18,2(20) 86*60662d10Schristos stb 19,3(20) 87*60662d10Schristos addi 20,20,4 88*60662d10Schristos bc 16,0,Lmemcpy 89*60662d10Schristos std 31,112(1) 90*60662d10Schristos addi 0,1,112 91*60662d10Schristos addi 31,1,48 92*60662d10Schristos std 5,120(1) 93*60662d10Schristos std 0,128(1) 94*60662d10Schristos std 31,136(1) 95*60662d10Schristos bl Lsha2_block_private 96*60662d10Schristos ld 31,112(1) 97*60662d10Schristos ld 5,120(1) 98*60662d10Schristos addic. 5,5,-64 99*60662d10Schristos bne Lunaligned 100*60662d10Schristos 101*60662d10SchristosLdone: 102*60662d10Schristos ld 0,336(1) 103*60662d10Schristos ld 14,176(1) 104*60662d10Schristos ld 15,184(1) 105*60662d10Schristos ld 16,192(1) 106*60662d10Schristos ld 17,200(1) 107*60662d10Schristos ld 18,208(1) 108*60662d10Schristos ld 19,216(1) 109*60662d10Schristos ld 20,224(1) 110*60662d10Schristos ld 21,232(1) 111*60662d10Schristos ld 22,240(1) 112*60662d10Schristos ld 23,248(1) 113*60662d10Schristos ld 24,256(1) 114*60662d10Schristos ld 25,264(1) 115*60662d10Schristos ld 26,272(1) 116*60662d10Schristos ld 27,280(1) 117*60662d10Schristos ld 28,288(1) 118*60662d10Schristos ld 29,296(1) 119*60662d10Schristos ld 30,304(1) 120*60662d10Schristos ld 31,312(1) 121*60662d10Schristos mtlr 0 122*60662d10Schristos addi 1,1,320 123*60662d10Schristos blr 124*60662d10Schristos.long 0 125*60662d10Schristos.byte 0,12,4,1,0x80,18,3,0 126*60662d10Schristos.long 0 127*60662d10Schristos.align 4 128*60662d10SchristosLsha2_block_private: 129*60662d10Schristos lwz 0,0(7) 130*60662d10Schristos lwz 16,0(31) 131*60662d10Schristos rotrwi 3,12,6 132*60662d10Schristos rotrwi 4,12,11 133*60662d10Schristos and 5,6,12 134*60662d10Schristos xor 3,3,4 135*60662d10Schristos add 15,15,0 136*60662d10Schristos andc 0,14,12 137*60662d10Schristos rotrwi 4,4,14 138*60662d10Schristos or 5,5,0 139*60662d10Schristos add 15,15,16 140*60662d10Schristos xor 3,3,4 141*60662d10Schristos add 15,15,5 142*60662d10Schristos add 15,15,3 143*60662d10Schristos 144*60662d10Schristos rotrwi 3,8,2 145*60662d10Schristos rotrwi 4,8,13 146*60662d10Schristos and 5,8,9 147*60662d10Schristos and 0,8,10 148*60662d10Schristos xor 3,3,4 149*60662d10Schristos rotrwi 4,4,9 150*60662d10Schristos xor 5,5,0 151*60662d10Schristos and 0,9,10 152*60662d10Schristos xor 3,3,4 153*60662d10Schristos add 11,11,15 154*60662d10Schristos xor 5,5,0 155*60662d10Schristos lwz 0,4(7) 156*60662d10Schristos add 15,15,3 157*60662d10Schristos add 15,15,5 158*60662d10Schristos 159*60662d10Schristos lwz 17,4(31) 160*60662d10Schristos rotrwi 3,11,6 161*60662d10Schristos rotrwi 4,11,11 162*60662d10Schristos and 5,12,11 163*60662d10Schristos xor 3,3,4 164*60662d10Schristos add 14,14,0 165*60662d10Schristos andc 0,6,11 166*60662d10Schristos rotrwi 4,4,14 167*60662d10Schristos or 5,5,0 168*60662d10Schristos add 14,14,17 169*60662d10Schristos xor 3,3,4 170*60662d10Schristos add 14,14,5 171*60662d10Schristos add 14,14,3 172*60662d10Schristos 173*60662d10Schristos rotrwi 3,15,2 174*60662d10Schristos rotrwi 4,15,13 175*60662d10Schristos and 5,15,8 176*60662d10Schristos and 0,15,9 177*60662d10Schristos xor 3,3,4 178*60662d10Schristos rotrwi 4,4,9 179*60662d10Schristos xor 5,5,0 180*60662d10Schristos and 0,8,9 181*60662d10Schristos xor 3,3,4 182*60662d10Schristos add 10,10,14 183*60662d10Schristos xor 5,5,0 184*60662d10Schristos lwz 0,8(7) 185*60662d10Schristos add 14,14,3 186*60662d10Schristos add 14,14,5 187*60662d10Schristos 188*60662d10Schristos lwz 18,8(31) 189*60662d10Schristos rotrwi 3,10,6 190*60662d10Schristos rotrwi 4,10,11 191*60662d10Schristos and 5,11,10 192*60662d10Schristos xor 3,3,4 193*60662d10Schristos add 6,6,0 194*60662d10Schristos andc 0,12,10 195*60662d10Schristos rotrwi 4,4,14 196*60662d10Schristos or 5,5,0 197*60662d10Schristos add 6,6,18 198*60662d10Schristos xor 3,3,4 199*60662d10Schristos add 6,6,5 200*60662d10Schristos add 6,6,3 201*60662d10Schristos 202*60662d10Schristos rotrwi 3,14,2 203*60662d10Schristos rotrwi 4,14,13 204*60662d10Schristos and 5,14,15 205*60662d10Schristos and 0,14,8 206*60662d10Schristos xor 3,3,4 207*60662d10Schristos rotrwi 4,4,9 208*60662d10Schristos xor 5,5,0 209*60662d10Schristos and 0,15,8 210*60662d10Schristos xor 3,3,4 211*60662d10Schristos add 9,9,6 212*60662d10Schristos xor 5,5,0 213*60662d10Schristos lwz 0,12(7) 214*60662d10Schristos add 6,6,3 215*60662d10Schristos add 6,6,5 216*60662d10Schristos 217*60662d10Schristos lwz 19,12(31) 218*60662d10Schristos rotrwi 3,9,6 219*60662d10Schristos rotrwi 4,9,11 220*60662d10Schristos and 5,10,9 221*60662d10Schristos xor 3,3,4 222*60662d10Schristos add 12,12,0 223*60662d10Schristos andc 0,11,9 224*60662d10Schristos rotrwi 4,4,14 225*60662d10Schristos or 5,5,0 226*60662d10Schristos add 12,12,19 227*60662d10Schristos xor 3,3,4 228*60662d10Schristos add 12,12,5 229*60662d10Schristos add 12,12,3 230*60662d10Schristos 231*60662d10Schristos rotrwi 3,6,2 232*60662d10Schristos rotrwi 4,6,13 233*60662d10Schristos and 5,6,14 234*60662d10Schristos and 0,6,15 235*60662d10Schristos xor 3,3,4 236*60662d10Schristos rotrwi 4,4,9 237*60662d10Schristos xor 5,5,0 238*60662d10Schristos and 0,14,15 239*60662d10Schristos xor 3,3,4 240*60662d10Schristos add 8,8,12 241*60662d10Schristos xor 5,5,0 242*60662d10Schristos lwz 0,16(7) 243*60662d10Schristos add 12,12,3 244*60662d10Schristos add 12,12,5 245*60662d10Schristos 246*60662d10Schristos lwz 20,16(31) 247*60662d10Schristos rotrwi 3,8,6 248*60662d10Schristos rotrwi 4,8,11 249*60662d10Schristos and 5,9,8 250*60662d10Schristos xor 3,3,4 251*60662d10Schristos add 11,11,0 252*60662d10Schristos andc 0,10,8 253*60662d10Schristos rotrwi 4,4,14 254*60662d10Schristos or 5,5,0 255*60662d10Schristos add 11,11,20 256*60662d10Schristos xor 3,3,4 257*60662d10Schristos add 11,11,5 258*60662d10Schristos add 11,11,3 259*60662d10Schristos 260*60662d10Schristos rotrwi 3,12,2 261*60662d10Schristos rotrwi 4,12,13 262*60662d10Schristos and 5,12,6 263*60662d10Schristos and 0,12,14 264*60662d10Schristos xor 3,3,4 265*60662d10Schristos rotrwi 4,4,9 266*60662d10Schristos xor 5,5,0 267*60662d10Schristos and 0,6,14 268*60662d10Schristos xor 3,3,4 269*60662d10Schristos add 15,15,11 270*60662d10Schristos xor 5,5,0 271*60662d10Schristos lwz 0,20(7) 272*60662d10Schristos add 11,11,3 273*60662d10Schristos add 11,11,5 274*60662d10Schristos 275*60662d10Schristos lwz 21,20(31) 276*60662d10Schristos rotrwi 3,15,6 277*60662d10Schristos rotrwi 4,15,11 278*60662d10Schristos and 5,8,15 279*60662d10Schristos xor 3,3,4 280*60662d10Schristos add 10,10,0 281*60662d10Schristos andc 0,9,15 282*60662d10Schristos rotrwi 4,4,14 283*60662d10Schristos or 5,5,0 284*60662d10Schristos add 10,10,21 285*60662d10Schristos xor 3,3,4 286*60662d10Schristos add 10,10,5 287*60662d10Schristos add 10,10,3 288*60662d10Schristos 289*60662d10Schristos rotrwi 3,11,2 290*60662d10Schristos rotrwi 4,11,13 291*60662d10Schristos and 5,11,12 292*60662d10Schristos and 0,11,6 293*60662d10Schristos xor 3,3,4 294*60662d10Schristos rotrwi 4,4,9 295*60662d10Schristos xor 5,5,0 296*60662d10Schristos and 0,12,6 297*60662d10Schristos xor 3,3,4 298*60662d10Schristos add 14,14,10 299*60662d10Schristos xor 5,5,0 300*60662d10Schristos lwz 0,24(7) 301*60662d10Schristos add 10,10,3 302*60662d10Schristos add 10,10,5 303*60662d10Schristos 304*60662d10Schristos lwz 22,24(31) 305*60662d10Schristos rotrwi 3,14,6 306*60662d10Schristos rotrwi 4,14,11 307*60662d10Schristos and 5,15,14 308*60662d10Schristos xor 3,3,4 309*60662d10Schristos add 9,9,0 310*60662d10Schristos andc 0,8,14 311*60662d10Schristos rotrwi 4,4,14 312*60662d10Schristos or 5,5,0 313*60662d10Schristos add 9,9,22 314*60662d10Schristos xor 3,3,4 315*60662d10Schristos add 9,9,5 316*60662d10Schristos add 9,9,3 317*60662d10Schristos 318*60662d10Schristos rotrwi 3,10,2 319*60662d10Schristos rotrwi 4,10,13 320*60662d10Schristos and 5,10,11 321*60662d10Schristos and 0,10,12 322*60662d10Schristos xor 3,3,4 323*60662d10Schristos rotrwi 4,4,9 324*60662d10Schristos xor 5,5,0 325*60662d10Schristos and 0,11,12 326*60662d10Schristos xor 3,3,4 327*60662d10Schristos add 6,6,9 328*60662d10Schristos xor 5,5,0 329*60662d10Schristos lwz 0,28(7) 330*60662d10Schristos add 9,9,3 331*60662d10Schristos add 9,9,5 332*60662d10Schristos 333*60662d10Schristos lwz 23,28(31) 334*60662d10Schristos rotrwi 3,6,6 335*60662d10Schristos rotrwi 4,6,11 336*60662d10Schristos and 5,14,6 337*60662d10Schristos xor 3,3,4 338*60662d10Schristos add 8,8,0 339*60662d10Schristos andc 0,15,6 340*60662d10Schristos rotrwi 4,4,14 341*60662d10Schristos or 5,5,0 342*60662d10Schristos add 8,8,23 343*60662d10Schristos xor 3,3,4 344*60662d10Schristos add 8,8,5 345*60662d10Schristos add 8,8,3 346*60662d10Schristos 347*60662d10Schristos rotrwi 3,9,2 348*60662d10Schristos rotrwi 4,9,13 349*60662d10Schristos and 5,9,10 350*60662d10Schristos and 0,9,11 351*60662d10Schristos xor 3,3,4 352*60662d10Schristos rotrwi 4,4,9 353*60662d10Schristos xor 5,5,0 354*60662d10Schristos and 0,10,11 355*60662d10Schristos xor 3,3,4 356*60662d10Schristos add 12,12,8 357*60662d10Schristos xor 5,5,0 358*60662d10Schristos lwz 0,32(7) 359*60662d10Schristos add 8,8,3 360*60662d10Schristos add 8,8,5 361*60662d10Schristos 362*60662d10Schristos lwz 24,32(31) 363*60662d10Schristos rotrwi 3,12,6 364*60662d10Schristos rotrwi 4,12,11 365*60662d10Schristos and 5,6,12 366*60662d10Schristos xor 3,3,4 367*60662d10Schristos add 15,15,0 368*60662d10Schristos andc 0,14,12 369*60662d10Schristos rotrwi 4,4,14 370*60662d10Schristos or 5,5,0 371*60662d10Schristos add 15,15,24 372*60662d10Schristos xor 3,3,4 373*60662d10Schristos add 15,15,5 374*60662d10Schristos add 15,15,3 375*60662d10Schristos 376*60662d10Schristos rotrwi 3,8,2 377*60662d10Schristos rotrwi 4,8,13 378*60662d10Schristos and 5,8,9 379*60662d10Schristos and 0,8,10 380*60662d10Schristos xor 3,3,4 381*60662d10Schristos rotrwi 4,4,9 382*60662d10Schristos xor 5,5,0 383*60662d10Schristos and 0,9,10 384*60662d10Schristos xor 3,3,4 385*60662d10Schristos add 11,11,15 386*60662d10Schristos xor 5,5,0 387*60662d10Schristos lwz 0,36(7) 388*60662d10Schristos add 15,15,3 389*60662d10Schristos add 15,15,5 390*60662d10Schristos 391*60662d10Schristos lwz 25,36(31) 392*60662d10Schristos rotrwi 3,11,6 393*60662d10Schristos rotrwi 4,11,11 394*60662d10Schristos and 5,12,11 395*60662d10Schristos xor 3,3,4 396*60662d10Schristos add 14,14,0 397*60662d10Schristos andc 0,6,11 398*60662d10Schristos rotrwi 4,4,14 399*60662d10Schristos or 5,5,0 400*60662d10Schristos add 14,14,25 401*60662d10Schristos xor 3,3,4 402*60662d10Schristos add 14,14,5 403*60662d10Schristos add 14,14,3 404*60662d10Schristos 405*60662d10Schristos rotrwi 3,15,2 406*60662d10Schristos rotrwi 4,15,13 407*60662d10Schristos and 5,15,8 408*60662d10Schristos and 0,15,9 409*60662d10Schristos xor 3,3,4 410*60662d10Schristos rotrwi 4,4,9 411*60662d10Schristos xor 5,5,0 412*60662d10Schristos and 0,8,9 413*60662d10Schristos xor 3,3,4 414*60662d10Schristos add 10,10,14 415*60662d10Schristos xor 5,5,0 416*60662d10Schristos lwz 0,40(7) 417*60662d10Schristos add 14,14,3 418*60662d10Schristos add 14,14,5 419*60662d10Schristos 420*60662d10Schristos lwz 26,40(31) 421*60662d10Schristos rotrwi 3,10,6 422*60662d10Schristos rotrwi 4,10,11 423*60662d10Schristos and 5,11,10 424*60662d10Schristos xor 3,3,4 425*60662d10Schristos add 6,6,0 426*60662d10Schristos andc 0,12,10 427*60662d10Schristos rotrwi 4,4,14 428*60662d10Schristos or 5,5,0 429*60662d10Schristos add 6,6,26 430*60662d10Schristos xor 3,3,4 431*60662d10Schristos add 6,6,5 432*60662d10Schristos add 6,6,3 433*60662d10Schristos 434*60662d10Schristos rotrwi 3,14,2 435*60662d10Schristos rotrwi 4,14,13 436*60662d10Schristos and 5,14,15 437*60662d10Schristos and 0,14,8 438*60662d10Schristos xor 3,3,4 439*60662d10Schristos rotrwi 4,4,9 440*60662d10Schristos xor 5,5,0 441*60662d10Schristos and 0,15,8 442*60662d10Schristos xor 3,3,4 443*60662d10Schristos add 9,9,6 444*60662d10Schristos xor 5,5,0 445*60662d10Schristos lwz 0,44(7) 446*60662d10Schristos add 6,6,3 447*60662d10Schristos add 6,6,5 448*60662d10Schristos 449*60662d10Schristos lwz 27,44(31) 450*60662d10Schristos rotrwi 3,9,6 451*60662d10Schristos rotrwi 4,9,11 452*60662d10Schristos and 5,10,9 453*60662d10Schristos xor 3,3,4 454*60662d10Schristos add 12,12,0 455*60662d10Schristos andc 0,11,9 456*60662d10Schristos rotrwi 4,4,14 457*60662d10Schristos or 5,5,0 458*60662d10Schristos add 12,12,27 459*60662d10Schristos xor 3,3,4 460*60662d10Schristos add 12,12,5 461*60662d10Schristos add 12,12,3 462*60662d10Schristos 463*60662d10Schristos rotrwi 3,6,2 464*60662d10Schristos rotrwi 4,6,13 465*60662d10Schristos and 5,6,14 466*60662d10Schristos and 0,6,15 467*60662d10Schristos xor 3,3,4 468*60662d10Schristos rotrwi 4,4,9 469*60662d10Schristos xor 5,5,0 470*60662d10Schristos and 0,14,15 471*60662d10Schristos xor 3,3,4 472*60662d10Schristos add 8,8,12 473*60662d10Schristos xor 5,5,0 474*60662d10Schristos lwz 0,48(7) 475*60662d10Schristos add 12,12,3 476*60662d10Schristos add 12,12,5 477*60662d10Schristos 478*60662d10Schristos lwz 28,48(31) 479*60662d10Schristos rotrwi 3,8,6 480*60662d10Schristos rotrwi 4,8,11 481*60662d10Schristos and 5,9,8 482*60662d10Schristos xor 3,3,4 483*60662d10Schristos add 11,11,0 484*60662d10Schristos andc 0,10,8 485*60662d10Schristos rotrwi 4,4,14 486*60662d10Schristos or 5,5,0 487*60662d10Schristos add 11,11,28 488*60662d10Schristos xor 3,3,4 489*60662d10Schristos add 11,11,5 490*60662d10Schristos add 11,11,3 491*60662d10Schristos 492*60662d10Schristos rotrwi 3,12,2 493*60662d10Schristos rotrwi 4,12,13 494*60662d10Schristos and 5,12,6 495*60662d10Schristos and 0,12,14 496*60662d10Schristos xor 3,3,4 497*60662d10Schristos rotrwi 4,4,9 498*60662d10Schristos xor 5,5,0 499*60662d10Schristos and 0,6,14 500*60662d10Schristos xor 3,3,4 501*60662d10Schristos add 15,15,11 502*60662d10Schristos xor 5,5,0 503*60662d10Schristos lwz 0,52(7) 504*60662d10Schristos add 11,11,3 505*60662d10Schristos add 11,11,5 506*60662d10Schristos 507*60662d10Schristos lwz 29,52(31) 508*60662d10Schristos rotrwi 3,15,6 509*60662d10Schristos rotrwi 4,15,11 510*60662d10Schristos and 5,8,15 511*60662d10Schristos xor 3,3,4 512*60662d10Schristos add 10,10,0 513*60662d10Schristos andc 0,9,15 514*60662d10Schristos rotrwi 4,4,14 515*60662d10Schristos or 5,5,0 516*60662d10Schristos add 10,10,29 517*60662d10Schristos xor 3,3,4 518*60662d10Schristos add 10,10,5 519*60662d10Schristos add 10,10,3 520*60662d10Schristos 521*60662d10Schristos rotrwi 3,11,2 522*60662d10Schristos rotrwi 4,11,13 523*60662d10Schristos and 5,11,12 524*60662d10Schristos and 0,11,6 525*60662d10Schristos xor 3,3,4 526*60662d10Schristos rotrwi 4,4,9 527*60662d10Schristos xor 5,5,0 528*60662d10Schristos and 0,12,6 529*60662d10Schristos xor 3,3,4 530*60662d10Schristos add 14,14,10 531*60662d10Schristos xor 5,5,0 532*60662d10Schristos lwz 0,56(7) 533*60662d10Schristos add 10,10,3 534*60662d10Schristos add 10,10,5 535*60662d10Schristos 536*60662d10Schristos lwz 30,56(31) 537*60662d10Schristos rotrwi 3,14,6 538*60662d10Schristos rotrwi 4,14,11 539*60662d10Schristos and 5,15,14 540*60662d10Schristos xor 3,3,4 541*60662d10Schristos add 9,9,0 542*60662d10Schristos andc 0,8,14 543*60662d10Schristos rotrwi 4,4,14 544*60662d10Schristos or 5,5,0 545*60662d10Schristos add 9,9,30 546*60662d10Schristos xor 3,3,4 547*60662d10Schristos add 9,9,5 548*60662d10Schristos add 9,9,3 549*60662d10Schristos 550*60662d10Schristos rotrwi 3,10,2 551*60662d10Schristos rotrwi 4,10,13 552*60662d10Schristos and 5,10,11 553*60662d10Schristos and 0,10,12 554*60662d10Schristos xor 3,3,4 555*60662d10Schristos rotrwi 4,4,9 556*60662d10Schristos xor 5,5,0 557*60662d10Schristos and 0,11,12 558*60662d10Schristos xor 3,3,4 559*60662d10Schristos add 6,6,9 560*60662d10Schristos xor 5,5,0 561*60662d10Schristos lwz 0,60(7) 562*60662d10Schristos add 9,9,3 563*60662d10Schristos add 9,9,5 564*60662d10Schristos 565*60662d10Schristos lwz 31,60(31) 566*60662d10Schristos rotrwi 3,6,6 567*60662d10Schristos rotrwi 4,6,11 568*60662d10Schristos and 5,14,6 569*60662d10Schristos xor 3,3,4 570*60662d10Schristos add 8,8,0 571*60662d10Schristos andc 0,15,6 572*60662d10Schristos rotrwi 4,4,14 573*60662d10Schristos or 5,5,0 574*60662d10Schristos add 8,8,31 575*60662d10Schristos xor 3,3,4 576*60662d10Schristos add 8,8,5 577*60662d10Schristos add 8,8,3 578*60662d10Schristos 579*60662d10Schristos rotrwi 3,9,2 580*60662d10Schristos rotrwi 4,9,13 581*60662d10Schristos and 5,9,10 582*60662d10Schristos and 0,9,11 583*60662d10Schristos xor 3,3,4 584*60662d10Schristos rotrwi 4,4,9 585*60662d10Schristos xor 5,5,0 586*60662d10Schristos and 0,10,11 587*60662d10Schristos xor 3,3,4 588*60662d10Schristos add 12,12,8 589*60662d10Schristos xor 5,5,0 590*60662d10Schristos add 8,8,3 591*60662d10Schristos add 8,8,5 592*60662d10Schristos 593*60662d10Schristos li 5,3 594*60662d10Schristos mtctr 5 595*60662d10Schristos.align 4 596*60662d10SchristosLrounds: 597*60662d10Schristos addi 7,7,64 598*60662d10Schristos rotrwi 3,17,7 599*60662d10Schristos rotrwi 4,17,18 600*60662d10Schristos rotrwi 5,30,17 601*60662d10Schristos rotrwi 0,30,19 602*60662d10Schristos xor 3,3,4 603*60662d10Schristos srwi 4,17,3 604*60662d10Schristos xor 5,5,0 605*60662d10Schristos srwi 0,30,10 606*60662d10Schristos add 16,16,25 607*60662d10Schristos xor 3,3,4 608*60662d10Schristos xor 5,5,0 609*60662d10Schristos lwz 0,0(7) 610*60662d10Schristos add 16,16,3 611*60662d10Schristos add 16,16,5 612*60662d10Schristos rotrwi 3,12,6 613*60662d10Schristos rotrwi 4,12,11 614*60662d10Schristos and 5,6,12 615*60662d10Schristos xor 3,3,4 616*60662d10Schristos add 15,15,0 617*60662d10Schristos andc 0,14,12 618*60662d10Schristos rotrwi 4,4,14 619*60662d10Schristos or 5,5,0 620*60662d10Schristos add 15,15,16 621*60662d10Schristos xor 3,3,4 622*60662d10Schristos add 15,15,5 623*60662d10Schristos add 15,15,3 624*60662d10Schristos 625*60662d10Schristos rotrwi 3,8,2 626*60662d10Schristos rotrwi 4,8,13 627*60662d10Schristos and 5,8,9 628*60662d10Schristos and 0,8,10 629*60662d10Schristos xor 3,3,4 630*60662d10Schristos rotrwi 4,4,9 631*60662d10Schristos xor 5,5,0 632*60662d10Schristos and 0,9,10 633*60662d10Schristos xor 3,3,4 634*60662d10Schristos add 11,11,15 635*60662d10Schristos xor 5,5,0 636*60662d10Schristos add 15,15,3 637*60662d10Schristos add 15,15,5 638*60662d10Schristos 639*60662d10Schristos rotrwi 3,18,7 640*60662d10Schristos rotrwi 4,18,18 641*60662d10Schristos rotrwi 5,31,17 642*60662d10Schristos rotrwi 0,31,19 643*60662d10Schristos xor 3,3,4 644*60662d10Schristos srwi 4,18,3 645*60662d10Schristos xor 5,5,0 646*60662d10Schristos srwi 0,31,10 647*60662d10Schristos add 17,17,26 648*60662d10Schristos xor 3,3,4 649*60662d10Schristos xor 5,5,0 650*60662d10Schristos lwz 0,4(7) 651*60662d10Schristos add 17,17,3 652*60662d10Schristos add 17,17,5 653*60662d10Schristos rotrwi 3,11,6 654*60662d10Schristos rotrwi 4,11,11 655*60662d10Schristos and 5,12,11 656*60662d10Schristos xor 3,3,4 657*60662d10Schristos add 14,14,0 658*60662d10Schristos andc 0,6,11 659*60662d10Schristos rotrwi 4,4,14 660*60662d10Schristos or 5,5,0 661*60662d10Schristos add 14,14,17 662*60662d10Schristos xor 3,3,4 663*60662d10Schristos add 14,14,5 664*60662d10Schristos add 14,14,3 665*60662d10Schristos 666*60662d10Schristos rotrwi 3,15,2 667*60662d10Schristos rotrwi 4,15,13 668*60662d10Schristos and 5,15,8 669*60662d10Schristos and 0,15,9 670*60662d10Schristos xor 3,3,4 671*60662d10Schristos rotrwi 4,4,9 672*60662d10Schristos xor 5,5,0 673*60662d10Schristos and 0,8,9 674*60662d10Schristos xor 3,3,4 675*60662d10Schristos add 10,10,14 676*60662d10Schristos xor 5,5,0 677*60662d10Schristos add 14,14,3 678*60662d10Schristos add 14,14,5 679*60662d10Schristos 680*60662d10Schristos rotrwi 3,19,7 681*60662d10Schristos rotrwi 4,19,18 682*60662d10Schristos rotrwi 5,16,17 683*60662d10Schristos rotrwi 0,16,19 684*60662d10Schristos xor 3,3,4 685*60662d10Schristos srwi 4,19,3 686*60662d10Schristos xor 5,5,0 687*60662d10Schristos srwi 0,16,10 688*60662d10Schristos add 18,18,27 689*60662d10Schristos xor 3,3,4 690*60662d10Schristos xor 5,5,0 691*60662d10Schristos lwz 0,8(7) 692*60662d10Schristos add 18,18,3 693*60662d10Schristos add 18,18,5 694*60662d10Schristos rotrwi 3,10,6 695*60662d10Schristos rotrwi 4,10,11 696*60662d10Schristos and 5,11,10 697*60662d10Schristos xor 3,3,4 698*60662d10Schristos add 6,6,0 699*60662d10Schristos andc 0,12,10 700*60662d10Schristos rotrwi 4,4,14 701*60662d10Schristos or 5,5,0 702*60662d10Schristos add 6,6,18 703*60662d10Schristos xor 3,3,4 704*60662d10Schristos add 6,6,5 705*60662d10Schristos add 6,6,3 706*60662d10Schristos 707*60662d10Schristos rotrwi 3,14,2 708*60662d10Schristos rotrwi 4,14,13 709*60662d10Schristos and 5,14,15 710*60662d10Schristos and 0,14,8 711*60662d10Schristos xor 3,3,4 712*60662d10Schristos rotrwi 4,4,9 713*60662d10Schristos xor 5,5,0 714*60662d10Schristos and 0,15,8 715*60662d10Schristos xor 3,3,4 716*60662d10Schristos add 9,9,6 717*60662d10Schristos xor 5,5,0 718*60662d10Schristos add 6,6,3 719*60662d10Schristos add 6,6,5 720*60662d10Schristos 721*60662d10Schristos rotrwi 3,20,7 722*60662d10Schristos rotrwi 4,20,18 723*60662d10Schristos rotrwi 5,17,17 724*60662d10Schristos rotrwi 0,17,19 725*60662d10Schristos xor 3,3,4 726*60662d10Schristos srwi 4,20,3 727*60662d10Schristos xor 5,5,0 728*60662d10Schristos srwi 0,17,10 729*60662d10Schristos add 19,19,28 730*60662d10Schristos xor 3,3,4 731*60662d10Schristos xor 5,5,0 732*60662d10Schristos lwz 0,12(7) 733*60662d10Schristos add 19,19,3 734*60662d10Schristos add 19,19,5 735*60662d10Schristos rotrwi 3,9,6 736*60662d10Schristos rotrwi 4,9,11 737*60662d10Schristos and 5,10,9 738*60662d10Schristos xor 3,3,4 739*60662d10Schristos add 12,12,0 740*60662d10Schristos andc 0,11,9 741*60662d10Schristos rotrwi 4,4,14 742*60662d10Schristos or 5,5,0 743*60662d10Schristos add 12,12,19 744*60662d10Schristos xor 3,3,4 745*60662d10Schristos add 12,12,5 746*60662d10Schristos add 12,12,3 747*60662d10Schristos 748*60662d10Schristos rotrwi 3,6,2 749*60662d10Schristos rotrwi 4,6,13 750*60662d10Schristos and 5,6,14 751*60662d10Schristos and 0,6,15 752*60662d10Schristos xor 3,3,4 753*60662d10Schristos rotrwi 4,4,9 754*60662d10Schristos xor 5,5,0 755*60662d10Schristos and 0,14,15 756*60662d10Schristos xor 3,3,4 757*60662d10Schristos add 8,8,12 758*60662d10Schristos xor 5,5,0 759*60662d10Schristos add 12,12,3 760*60662d10Schristos add 12,12,5 761*60662d10Schristos 762*60662d10Schristos rotrwi 3,21,7 763*60662d10Schristos rotrwi 4,21,18 764*60662d10Schristos rotrwi 5,18,17 765*60662d10Schristos rotrwi 0,18,19 766*60662d10Schristos xor 3,3,4 767*60662d10Schristos srwi 4,21,3 768*60662d10Schristos xor 5,5,0 769*60662d10Schristos srwi 0,18,10 770*60662d10Schristos add 20,20,29 771*60662d10Schristos xor 3,3,4 772*60662d10Schristos xor 5,5,0 773*60662d10Schristos lwz 0,16(7) 774*60662d10Schristos add 20,20,3 775*60662d10Schristos add 20,20,5 776*60662d10Schristos rotrwi 3,8,6 777*60662d10Schristos rotrwi 4,8,11 778*60662d10Schristos and 5,9,8 779*60662d10Schristos xor 3,3,4 780*60662d10Schristos add 11,11,0 781*60662d10Schristos andc 0,10,8 782*60662d10Schristos rotrwi 4,4,14 783*60662d10Schristos or 5,5,0 784*60662d10Schristos add 11,11,20 785*60662d10Schristos xor 3,3,4 786*60662d10Schristos add 11,11,5 787*60662d10Schristos add 11,11,3 788*60662d10Schristos 789*60662d10Schristos rotrwi 3,12,2 790*60662d10Schristos rotrwi 4,12,13 791*60662d10Schristos and 5,12,6 792*60662d10Schristos and 0,12,14 793*60662d10Schristos xor 3,3,4 794*60662d10Schristos rotrwi 4,4,9 795*60662d10Schristos xor 5,5,0 796*60662d10Schristos and 0,6,14 797*60662d10Schristos xor 3,3,4 798*60662d10Schristos add 15,15,11 799*60662d10Schristos xor 5,5,0 800*60662d10Schristos add 11,11,3 801*60662d10Schristos add 11,11,5 802*60662d10Schristos 803*60662d10Schristos rotrwi 3,22,7 804*60662d10Schristos rotrwi 4,22,18 805*60662d10Schristos rotrwi 5,19,17 806*60662d10Schristos rotrwi 0,19,19 807*60662d10Schristos xor 3,3,4 808*60662d10Schristos srwi 4,22,3 809*60662d10Schristos xor 5,5,0 810*60662d10Schristos srwi 0,19,10 811*60662d10Schristos add 21,21,30 812*60662d10Schristos xor 3,3,4 813*60662d10Schristos xor 5,5,0 814*60662d10Schristos lwz 0,20(7) 815*60662d10Schristos add 21,21,3 816*60662d10Schristos add 21,21,5 817*60662d10Schristos rotrwi 3,15,6 818*60662d10Schristos rotrwi 4,15,11 819*60662d10Schristos and 5,8,15 820*60662d10Schristos xor 3,3,4 821*60662d10Schristos add 10,10,0 822*60662d10Schristos andc 0,9,15 823*60662d10Schristos rotrwi 4,4,14 824*60662d10Schristos or 5,5,0 825*60662d10Schristos add 10,10,21 826*60662d10Schristos xor 3,3,4 827*60662d10Schristos add 10,10,5 828*60662d10Schristos add 10,10,3 829*60662d10Schristos 830*60662d10Schristos rotrwi 3,11,2 831*60662d10Schristos rotrwi 4,11,13 832*60662d10Schristos and 5,11,12 833*60662d10Schristos and 0,11,6 834*60662d10Schristos xor 3,3,4 835*60662d10Schristos rotrwi 4,4,9 836*60662d10Schristos xor 5,5,0 837*60662d10Schristos and 0,12,6 838*60662d10Schristos xor 3,3,4 839*60662d10Schristos add 14,14,10 840*60662d10Schristos xor 5,5,0 841*60662d10Schristos add 10,10,3 842*60662d10Schristos add 10,10,5 843*60662d10Schristos 844*60662d10Schristos rotrwi 3,23,7 845*60662d10Schristos rotrwi 4,23,18 846*60662d10Schristos rotrwi 5,20,17 847*60662d10Schristos rotrwi 0,20,19 848*60662d10Schristos xor 3,3,4 849*60662d10Schristos srwi 4,23,3 850*60662d10Schristos xor 5,5,0 851*60662d10Schristos srwi 0,20,10 852*60662d10Schristos add 22,22,31 853*60662d10Schristos xor 3,3,4 854*60662d10Schristos xor 5,5,0 855*60662d10Schristos lwz 0,24(7) 856*60662d10Schristos add 22,22,3 857*60662d10Schristos add 22,22,5 858*60662d10Schristos rotrwi 3,14,6 859*60662d10Schristos rotrwi 4,14,11 860*60662d10Schristos and 5,15,14 861*60662d10Schristos xor 3,3,4 862*60662d10Schristos add 9,9,0 863*60662d10Schristos andc 0,8,14 864*60662d10Schristos rotrwi 4,4,14 865*60662d10Schristos or 5,5,0 866*60662d10Schristos add 9,9,22 867*60662d10Schristos xor 3,3,4 868*60662d10Schristos add 9,9,5 869*60662d10Schristos add 9,9,3 870*60662d10Schristos 871*60662d10Schristos rotrwi 3,10,2 872*60662d10Schristos rotrwi 4,10,13 873*60662d10Schristos and 5,10,11 874*60662d10Schristos and 0,10,12 875*60662d10Schristos xor 3,3,4 876*60662d10Schristos rotrwi 4,4,9 877*60662d10Schristos xor 5,5,0 878*60662d10Schristos and 0,11,12 879*60662d10Schristos xor 3,3,4 880*60662d10Schristos add 6,6,9 881*60662d10Schristos xor 5,5,0 882*60662d10Schristos add 9,9,3 883*60662d10Schristos add 9,9,5 884*60662d10Schristos 885*60662d10Schristos rotrwi 3,24,7 886*60662d10Schristos rotrwi 4,24,18 887*60662d10Schristos rotrwi 5,21,17 888*60662d10Schristos rotrwi 0,21,19 889*60662d10Schristos xor 3,3,4 890*60662d10Schristos srwi 4,24,3 891*60662d10Schristos xor 5,5,0 892*60662d10Schristos srwi 0,21,10 893*60662d10Schristos add 23,23,16 894*60662d10Schristos xor 3,3,4 895*60662d10Schristos xor 5,5,0 896*60662d10Schristos lwz 0,28(7) 897*60662d10Schristos add 23,23,3 898*60662d10Schristos add 23,23,5 899*60662d10Schristos rotrwi 3,6,6 900*60662d10Schristos rotrwi 4,6,11 901*60662d10Schristos and 5,14,6 902*60662d10Schristos xor 3,3,4 903*60662d10Schristos add 8,8,0 904*60662d10Schristos andc 0,15,6 905*60662d10Schristos rotrwi 4,4,14 906*60662d10Schristos or 5,5,0 907*60662d10Schristos add 8,8,23 908*60662d10Schristos xor 3,3,4 909*60662d10Schristos add 8,8,5 910*60662d10Schristos add 8,8,3 911*60662d10Schristos 912*60662d10Schristos rotrwi 3,9,2 913*60662d10Schristos rotrwi 4,9,13 914*60662d10Schristos and 5,9,10 915*60662d10Schristos and 0,9,11 916*60662d10Schristos xor 3,3,4 917*60662d10Schristos rotrwi 4,4,9 918*60662d10Schristos xor 5,5,0 919*60662d10Schristos and 0,10,11 920*60662d10Schristos xor 3,3,4 921*60662d10Schristos add 12,12,8 922*60662d10Schristos xor 5,5,0 923*60662d10Schristos add 8,8,3 924*60662d10Schristos add 8,8,5 925*60662d10Schristos 926*60662d10Schristos rotrwi 3,25,7 927*60662d10Schristos rotrwi 4,25,18 928*60662d10Schristos rotrwi 5,22,17 929*60662d10Schristos rotrwi 0,22,19 930*60662d10Schristos xor 3,3,4 931*60662d10Schristos srwi 4,25,3 932*60662d10Schristos xor 5,5,0 933*60662d10Schristos srwi 0,22,10 934*60662d10Schristos add 24,24,17 935*60662d10Schristos xor 3,3,4 936*60662d10Schristos xor 5,5,0 937*60662d10Schristos lwz 0,32(7) 938*60662d10Schristos add 24,24,3 939*60662d10Schristos add 24,24,5 940*60662d10Schristos rotrwi 3,12,6 941*60662d10Schristos rotrwi 4,12,11 942*60662d10Schristos and 5,6,12 943*60662d10Schristos xor 3,3,4 944*60662d10Schristos add 15,15,0 945*60662d10Schristos andc 0,14,12 946*60662d10Schristos rotrwi 4,4,14 947*60662d10Schristos or 5,5,0 948*60662d10Schristos add 15,15,24 949*60662d10Schristos xor 3,3,4 950*60662d10Schristos add 15,15,5 951*60662d10Schristos add 15,15,3 952*60662d10Schristos 953*60662d10Schristos rotrwi 3,8,2 954*60662d10Schristos rotrwi 4,8,13 955*60662d10Schristos and 5,8,9 956*60662d10Schristos and 0,8,10 957*60662d10Schristos xor 3,3,4 958*60662d10Schristos rotrwi 4,4,9 959*60662d10Schristos xor 5,5,0 960*60662d10Schristos and 0,9,10 961*60662d10Schristos xor 3,3,4 962*60662d10Schristos add 11,11,15 963*60662d10Schristos xor 5,5,0 964*60662d10Schristos add 15,15,3 965*60662d10Schristos add 15,15,5 966*60662d10Schristos 967*60662d10Schristos rotrwi 3,26,7 968*60662d10Schristos rotrwi 4,26,18 969*60662d10Schristos rotrwi 5,23,17 970*60662d10Schristos rotrwi 0,23,19 971*60662d10Schristos xor 3,3,4 972*60662d10Schristos srwi 4,26,3 973*60662d10Schristos xor 5,5,0 974*60662d10Schristos srwi 0,23,10 975*60662d10Schristos add 25,25,18 976*60662d10Schristos xor 3,3,4 977*60662d10Schristos xor 5,5,0 978*60662d10Schristos lwz 0,36(7) 979*60662d10Schristos add 25,25,3 980*60662d10Schristos add 25,25,5 981*60662d10Schristos rotrwi 3,11,6 982*60662d10Schristos rotrwi 4,11,11 983*60662d10Schristos and 5,12,11 984*60662d10Schristos xor 3,3,4 985*60662d10Schristos add 14,14,0 986*60662d10Schristos andc 0,6,11 987*60662d10Schristos rotrwi 4,4,14 988*60662d10Schristos or 5,5,0 989*60662d10Schristos add 14,14,25 990*60662d10Schristos xor 3,3,4 991*60662d10Schristos add 14,14,5 992*60662d10Schristos add 14,14,3 993*60662d10Schristos 994*60662d10Schristos rotrwi 3,15,2 995*60662d10Schristos rotrwi 4,15,13 996*60662d10Schristos and 5,15,8 997*60662d10Schristos and 0,15,9 998*60662d10Schristos xor 3,3,4 999*60662d10Schristos rotrwi 4,4,9 1000*60662d10Schristos xor 5,5,0 1001*60662d10Schristos and 0,8,9 1002*60662d10Schristos xor 3,3,4 1003*60662d10Schristos add 10,10,14 1004*60662d10Schristos xor 5,5,0 1005*60662d10Schristos add 14,14,3 1006*60662d10Schristos add 14,14,5 1007*60662d10Schristos 1008*60662d10Schristos rotrwi 3,27,7 1009*60662d10Schristos rotrwi 4,27,18 1010*60662d10Schristos rotrwi 5,24,17 1011*60662d10Schristos rotrwi 0,24,19 1012*60662d10Schristos xor 3,3,4 1013*60662d10Schristos srwi 4,27,3 1014*60662d10Schristos xor 5,5,0 1015*60662d10Schristos srwi 0,24,10 1016*60662d10Schristos add 26,26,19 1017*60662d10Schristos xor 3,3,4 1018*60662d10Schristos xor 5,5,0 1019*60662d10Schristos lwz 0,40(7) 1020*60662d10Schristos add 26,26,3 1021*60662d10Schristos add 26,26,5 1022*60662d10Schristos rotrwi 3,10,6 1023*60662d10Schristos rotrwi 4,10,11 1024*60662d10Schristos and 5,11,10 1025*60662d10Schristos xor 3,3,4 1026*60662d10Schristos add 6,6,0 1027*60662d10Schristos andc 0,12,10 1028*60662d10Schristos rotrwi 4,4,14 1029*60662d10Schristos or 5,5,0 1030*60662d10Schristos add 6,6,26 1031*60662d10Schristos xor 3,3,4 1032*60662d10Schristos add 6,6,5 1033*60662d10Schristos add 6,6,3 1034*60662d10Schristos 1035*60662d10Schristos rotrwi 3,14,2 1036*60662d10Schristos rotrwi 4,14,13 1037*60662d10Schristos and 5,14,15 1038*60662d10Schristos and 0,14,8 1039*60662d10Schristos xor 3,3,4 1040*60662d10Schristos rotrwi 4,4,9 1041*60662d10Schristos xor 5,5,0 1042*60662d10Schristos and 0,15,8 1043*60662d10Schristos xor 3,3,4 1044*60662d10Schristos add 9,9,6 1045*60662d10Schristos xor 5,5,0 1046*60662d10Schristos add 6,6,3 1047*60662d10Schristos add 6,6,5 1048*60662d10Schristos 1049*60662d10Schristos rotrwi 3,28,7 1050*60662d10Schristos rotrwi 4,28,18 1051*60662d10Schristos rotrwi 5,25,17 1052*60662d10Schristos rotrwi 0,25,19 1053*60662d10Schristos xor 3,3,4 1054*60662d10Schristos srwi 4,28,3 1055*60662d10Schristos xor 5,5,0 1056*60662d10Schristos srwi 0,25,10 1057*60662d10Schristos add 27,27,20 1058*60662d10Schristos xor 3,3,4 1059*60662d10Schristos xor 5,5,0 1060*60662d10Schristos lwz 0,44(7) 1061*60662d10Schristos add 27,27,3 1062*60662d10Schristos add 27,27,5 1063*60662d10Schristos rotrwi 3,9,6 1064*60662d10Schristos rotrwi 4,9,11 1065*60662d10Schristos and 5,10,9 1066*60662d10Schristos xor 3,3,4 1067*60662d10Schristos add 12,12,0 1068*60662d10Schristos andc 0,11,9 1069*60662d10Schristos rotrwi 4,4,14 1070*60662d10Schristos or 5,5,0 1071*60662d10Schristos add 12,12,27 1072*60662d10Schristos xor 3,3,4 1073*60662d10Schristos add 12,12,5 1074*60662d10Schristos add 12,12,3 1075*60662d10Schristos 1076*60662d10Schristos rotrwi 3,6,2 1077*60662d10Schristos rotrwi 4,6,13 1078*60662d10Schristos and 5,6,14 1079*60662d10Schristos and 0,6,15 1080*60662d10Schristos xor 3,3,4 1081*60662d10Schristos rotrwi 4,4,9 1082*60662d10Schristos xor 5,5,0 1083*60662d10Schristos and 0,14,15 1084*60662d10Schristos xor 3,3,4 1085*60662d10Schristos add 8,8,12 1086*60662d10Schristos xor 5,5,0 1087*60662d10Schristos add 12,12,3 1088*60662d10Schristos add 12,12,5 1089*60662d10Schristos 1090*60662d10Schristos rotrwi 3,29,7 1091*60662d10Schristos rotrwi 4,29,18 1092*60662d10Schristos rotrwi 5,26,17 1093*60662d10Schristos rotrwi 0,26,19 1094*60662d10Schristos xor 3,3,4 1095*60662d10Schristos srwi 4,29,3 1096*60662d10Schristos xor 5,5,0 1097*60662d10Schristos srwi 0,26,10 1098*60662d10Schristos add 28,28,21 1099*60662d10Schristos xor 3,3,4 1100*60662d10Schristos xor 5,5,0 1101*60662d10Schristos lwz 0,48(7) 1102*60662d10Schristos add 28,28,3 1103*60662d10Schristos add 28,28,5 1104*60662d10Schristos rotrwi 3,8,6 1105*60662d10Schristos rotrwi 4,8,11 1106*60662d10Schristos and 5,9,8 1107*60662d10Schristos xor 3,3,4 1108*60662d10Schristos add 11,11,0 1109*60662d10Schristos andc 0,10,8 1110*60662d10Schristos rotrwi 4,4,14 1111*60662d10Schristos or 5,5,0 1112*60662d10Schristos add 11,11,28 1113*60662d10Schristos xor 3,3,4 1114*60662d10Schristos add 11,11,5 1115*60662d10Schristos add 11,11,3 1116*60662d10Schristos 1117*60662d10Schristos rotrwi 3,12,2 1118*60662d10Schristos rotrwi 4,12,13 1119*60662d10Schristos and 5,12,6 1120*60662d10Schristos and 0,12,14 1121*60662d10Schristos xor 3,3,4 1122*60662d10Schristos rotrwi 4,4,9 1123*60662d10Schristos xor 5,5,0 1124*60662d10Schristos and 0,6,14 1125*60662d10Schristos xor 3,3,4 1126*60662d10Schristos add 15,15,11 1127*60662d10Schristos xor 5,5,0 1128*60662d10Schristos add 11,11,3 1129*60662d10Schristos add 11,11,5 1130*60662d10Schristos 1131*60662d10Schristos rotrwi 3,30,7 1132*60662d10Schristos rotrwi 4,30,18 1133*60662d10Schristos rotrwi 5,27,17 1134*60662d10Schristos rotrwi 0,27,19 1135*60662d10Schristos xor 3,3,4 1136*60662d10Schristos srwi 4,30,3 1137*60662d10Schristos xor 5,5,0 1138*60662d10Schristos srwi 0,27,10 1139*60662d10Schristos add 29,29,22 1140*60662d10Schristos xor 3,3,4 1141*60662d10Schristos xor 5,5,0 1142*60662d10Schristos lwz 0,52(7) 1143*60662d10Schristos add 29,29,3 1144*60662d10Schristos add 29,29,5 1145*60662d10Schristos rotrwi 3,15,6 1146*60662d10Schristos rotrwi 4,15,11 1147*60662d10Schristos and 5,8,15 1148*60662d10Schristos xor 3,3,4 1149*60662d10Schristos add 10,10,0 1150*60662d10Schristos andc 0,9,15 1151*60662d10Schristos rotrwi 4,4,14 1152*60662d10Schristos or 5,5,0 1153*60662d10Schristos add 10,10,29 1154*60662d10Schristos xor 3,3,4 1155*60662d10Schristos add 10,10,5 1156*60662d10Schristos add 10,10,3 1157*60662d10Schristos 1158*60662d10Schristos rotrwi 3,11,2 1159*60662d10Schristos rotrwi 4,11,13 1160*60662d10Schristos and 5,11,12 1161*60662d10Schristos and 0,11,6 1162*60662d10Schristos xor 3,3,4 1163*60662d10Schristos rotrwi 4,4,9 1164*60662d10Schristos xor 5,5,0 1165*60662d10Schristos and 0,12,6 1166*60662d10Schristos xor 3,3,4 1167*60662d10Schristos add 14,14,10 1168*60662d10Schristos xor 5,5,0 1169*60662d10Schristos add 10,10,3 1170*60662d10Schristos add 10,10,5 1171*60662d10Schristos 1172*60662d10Schristos rotrwi 3,31,7 1173*60662d10Schristos rotrwi 4,31,18 1174*60662d10Schristos rotrwi 5,28,17 1175*60662d10Schristos rotrwi 0,28,19 1176*60662d10Schristos xor 3,3,4 1177*60662d10Schristos srwi 4,31,3 1178*60662d10Schristos xor 5,5,0 1179*60662d10Schristos srwi 0,28,10 1180*60662d10Schristos add 30,30,23 1181*60662d10Schristos xor 3,3,4 1182*60662d10Schristos xor 5,5,0 1183*60662d10Schristos lwz 0,56(7) 1184*60662d10Schristos add 30,30,3 1185*60662d10Schristos add 30,30,5 1186*60662d10Schristos rotrwi 3,14,6 1187*60662d10Schristos rotrwi 4,14,11 1188*60662d10Schristos and 5,15,14 1189*60662d10Schristos xor 3,3,4 1190*60662d10Schristos add 9,9,0 1191*60662d10Schristos andc 0,8,14 1192*60662d10Schristos rotrwi 4,4,14 1193*60662d10Schristos or 5,5,0 1194*60662d10Schristos add 9,9,30 1195*60662d10Schristos xor 3,3,4 1196*60662d10Schristos add 9,9,5 1197*60662d10Schristos add 9,9,3 1198*60662d10Schristos 1199*60662d10Schristos rotrwi 3,10,2 1200*60662d10Schristos rotrwi 4,10,13 1201*60662d10Schristos and 5,10,11 1202*60662d10Schristos and 0,10,12 1203*60662d10Schristos xor 3,3,4 1204*60662d10Schristos rotrwi 4,4,9 1205*60662d10Schristos xor 5,5,0 1206*60662d10Schristos and 0,11,12 1207*60662d10Schristos xor 3,3,4 1208*60662d10Schristos add 6,6,9 1209*60662d10Schristos xor 5,5,0 1210*60662d10Schristos add 9,9,3 1211*60662d10Schristos add 9,9,5 1212*60662d10Schristos 1213*60662d10Schristos rotrwi 3,16,7 1214*60662d10Schristos rotrwi 4,16,18 1215*60662d10Schristos rotrwi 5,29,17 1216*60662d10Schristos rotrwi 0,29,19 1217*60662d10Schristos xor 3,3,4 1218*60662d10Schristos srwi 4,16,3 1219*60662d10Schristos xor 5,5,0 1220*60662d10Schristos srwi 0,29,10 1221*60662d10Schristos add 31,31,24 1222*60662d10Schristos xor 3,3,4 1223*60662d10Schristos xor 5,5,0 1224*60662d10Schristos lwz 0,60(7) 1225*60662d10Schristos add 31,31,3 1226*60662d10Schristos add 31,31,5 1227*60662d10Schristos rotrwi 3,6,6 1228*60662d10Schristos rotrwi 4,6,11 1229*60662d10Schristos and 5,14,6 1230*60662d10Schristos xor 3,3,4 1231*60662d10Schristos add 8,8,0 1232*60662d10Schristos andc 0,15,6 1233*60662d10Schristos rotrwi 4,4,14 1234*60662d10Schristos or 5,5,0 1235*60662d10Schristos add 8,8,31 1236*60662d10Schristos xor 3,3,4 1237*60662d10Schristos add 8,8,5 1238*60662d10Schristos add 8,8,3 1239*60662d10Schristos 1240*60662d10Schristos rotrwi 3,9,2 1241*60662d10Schristos rotrwi 4,9,13 1242*60662d10Schristos and 5,9,10 1243*60662d10Schristos and 0,9,11 1244*60662d10Schristos xor 3,3,4 1245*60662d10Schristos rotrwi 4,4,9 1246*60662d10Schristos xor 5,5,0 1247*60662d10Schristos and 0,10,11 1248*60662d10Schristos xor 3,3,4 1249*60662d10Schristos add 12,12,8 1250*60662d10Schristos xor 5,5,0 1251*60662d10Schristos add 8,8,3 1252*60662d10Schristos add 8,8,5 1253*60662d10Schristos 1254*60662d10Schristos bc 16,0,Lrounds 1255*60662d10Schristos 1256*60662d10Schristos ld 3,144(1) 1257*60662d10Schristos ld 31,136(1) 1258*60662d10Schristos ld 5,128(1) 1259*60662d10Schristos subi 7,7,192 1260*60662d10Schristos 1261*60662d10Schristos lwz 16,0(3) 1262*60662d10Schristos lwz 17,4(3) 1263*60662d10Schristos lwz 18,8(3) 1264*60662d10Schristos lwz 19,12(3) 1265*60662d10Schristos lwz 20,16(3) 1266*60662d10Schristos lwz 21,20(3) 1267*60662d10Schristos lwz 22,24(3) 1268*60662d10Schristos addi 31,31,64 1269*60662d10Schristos lwz 23,28(3) 1270*60662d10Schristos add 8,8,16 1271*60662d10Schristos add 9,9,17 1272*60662d10Schristos std 31,136(1) 1273*60662d10Schristos add 10,10,18 1274*60662d10Schristos stw 8,0(3) 1275*60662d10Schristos add 11,11,19 1276*60662d10Schristos stw 9,4(3) 1277*60662d10Schristos add 12,12,20 1278*60662d10Schristos stw 10,8(3) 1279*60662d10Schristos add 6,6,21 1280*60662d10Schristos stw 11,12(3) 1281*60662d10Schristos add 14,14,22 1282*60662d10Schristos stw 12,16(3) 1283*60662d10Schristos add 15,15,23 1284*60662d10Schristos stw 6,20(3) 1285*60662d10Schristos stw 14,24(3) 1286*60662d10Schristos cmpld 31,5 1287*60662d10Schristos stw 15,28(3) 1288*60662d10Schristos bne Lsha2_block_private 1289*60662d10Schristos blr 1290*60662d10Schristos.long 0 1291*60662d10Schristos.byte 0,12,0x14,0,0,0,0,0 1292*60662d10Schristos 1293*60662d10Schristos.align 6 1294*60662d10SchristosLPICmeup: 1295*60662d10Schristos mflr 0 1296*60662d10Schristos bcl 20,31,$+4 1297*60662d10Schristos mflr 7 1298*60662d10Schristos addi 7,7,56 1299*60662d10Schristos mtlr 0 1300*60662d10Schristos blr 1301*60662d10Schristos.long 0 1302*60662d10Schristos.byte 0,12,0x14,0,0,0,0,0 1303*60662d10Schristos.space 28 1304*60662d10Schristos.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 1305*60662d10Schristos.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 1306*60662d10Schristos.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 1307*60662d10Schristos.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 1308*60662d10Schristos.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc 1309*60662d10Schristos.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da 1310*60662d10Schristos.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 1311*60662d10Schristos.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 1312*60662d10Schristos.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 1313*60662d10Schristos.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 1314*60662d10Schristos.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 1315*60662d10Schristos.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 1316*60662d10Schristos.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 1317*60662d10Schristos.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 1318*60662d10Schristos.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 1319*60662d10Schristos.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 1320