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