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