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