1/* Do not modify. This file is auto-generated from poly1305-ppc.pl. */ 2.machine "any" 3.abiversion 2 4.text 5.globl poly1305_init_int 6.type poly1305_init_int,@function 7.align 4 8poly1305_init_int: 9.localentry poly1305_init_int,0 10 11 xor 0,0,0 12 std 0,0(3) 13 std 0,8(3) 14 std 0,16(3) 15 stw 0,24(3) 16 17 cmpld 4,0 18 beq- .Lno_key 19 ld 10,0(4) 20 ld 11,8(4) 21 lis 8,0xfff 22 ori 8,8,0xfffc 23 insrdi 8,8,32,0 24 ori 7,8,3 25 26 and 10,10,7 27 and 11,11,8 28 29 std 10,32(3) 30 std 11,40(3) 31 32.Lno_key: 33 xor 3,3,3 34 blr 35.long 0 36.byte 0,12,0x14,0,0,0,2,0 37.size poly1305_init_int,.-poly1305_init_int 38 39.globl poly1305_blocks 40.type poly1305_blocks,@function 41.align 4 42poly1305_blocks: 43.localentry poly1305_blocks,0 44 45.Lpoly1305_blocks: 46 srdi. 5,5,4 47 beq- .Labort 48 49 stdu 1,-192(1) 50 mflr 0 51 std 27,152(1) 52 std 28,160(1) 53 std 29,168(1) 54 std 30,176(1) 55 std 31,184(1) 56 std 0,208(1) 57 58 ld 27,32(3) 59 ld 28,40(3) 60 61 ld 7,0(3) 62 ld 8,8(3) 63 ld 9,16(3) 64 65 srdi 29,28,2 66 mtctr 5 67 add 29,29,28 68 li 0,3 69 b .Loop 70 71.align 4 72.Loop: 73 ld 30,0(4) 74 ld 31,8(4) 75 addi 4,4,16 76 77 addc 7,7,30 78 adde 8,8,31 79 80 mulld 10,7,27 81 mulhdu 11,7,27 82 adde 9,9,6 83 84 mulld 30,8,29 85 mulhdu 31,8,29 86 addc 10,10,30 87 adde 11,11,31 88 89 mulld 30,7,28 90 mulhdu 12,7,28 91 addc 11,11,30 92 addze 12,12 93 94 mulld 30,8,27 95 mulhdu 31,8,27 96 addc 11,11,30 97 adde 12,12,31 98 99 mulld 30,9,29 100 mulld 31,9,27 101 addc 11,11,30 102 adde 12,12,31 103 104 andc 30,12,0 105 and 9,12,0 106 srdi 31,30,2 107 add 30,30,31 108 addc 7,10,30 109 addze 8,11 110 addze 9,9 111 112 bdnz .Loop 113 114 std 7,0(3) 115 std 8,8(3) 116 std 9,16(3) 117 118 ld 27,152(1) 119 ld 28,160(1) 120 ld 29,168(1) 121 ld 30,176(1) 122 ld 31,184(1) 123 addi 1,1,192 124.Labort: 125 blr 126.long 0 127.byte 0,12,4,1,0x80,5,4,0 128.size poly1305_blocks,.-poly1305_blocks 129.globl poly1305_emit 130.type poly1305_emit,@function 131.align 5 132poly1305_emit: 133.localentry poly1305_emit,0 134 135 lwz 7,0(3) 136 lwz 8,4(3) 137 lwz 9,8(3) 138 lwz 10,12(3) 139 lwz 11,16(3) 140 lwz 0,24(3) 141 142 sldi 8,8,26 143 sldi 12,9,52 144 srdi 9,9,12 145 sldi 10,10,14 146 add 7,7,8 147 addc 7,7,12 148 sldi 12,11,40 149 srdi 11,11,24 150 adde 8,9,10 151 addc 8,8,12 152 addze 9,11 153 154 ld 10,0(3) 155 ld 11,8(3) 156 ld 12,16(3) 157 158 neg 0,0 159 xor 7,7,10 160 xor 8,8,11 161 xor 9,9,12 162 and 7,7,0 163 and 8,8,0 164 and 9,9,0 165 xor 7,7,10 166 xor 8,8,11 167 xor 9,9,12 168 169 addic 10,7,5 170 addze 11,8 171 addze 12,9 172 173 srdi 12,12,2 174 neg 12,12 175 176 andc 7,7,12 177 and 10,10,12 178 andc 8,8,12 179 and 11,11,12 180 or 7,7,10 181 or 8,8,11 182 183 lwz 12,4(5) 184 lwz 9,12(5) 185 lwz 10,0(5) 186 lwz 11,8(5) 187 188 insrdi 10,12,32,0 189 insrdi 11,9,32,0 190 191 addc 7,7,10 192 adde 8,8,11 193 194 addi 3,4,-1 195 addi 4,4,7 196 197 stbu 7,1(3) 198 srdi 7,7,8 199 stbu 8,1(4) 200 srdi 8,8,8 201 202 stbu 7,1(3) 203 srdi 7,7,8 204 stbu 8,1(4) 205 srdi 8,8,8 206 207 stbu 7,1(3) 208 srdi 7,7,8 209 stbu 8,1(4) 210 srdi 8,8,8 211 212 stbu 7,1(3) 213 srdi 7,7,8 214 stbu 8,1(4) 215 srdi 8,8,8 216 217 stbu 7,1(3) 218 srdi 7,7,8 219 stbu 8,1(4) 220 srdi 8,8,8 221 222 stbu 7,1(3) 223 srdi 7,7,8 224 stbu 8,1(4) 225 srdi 8,8,8 226 227 stbu 7,1(3) 228 srdi 7,7,8 229 stbu 8,1(4) 230 srdi 8,8,8 231 232 stbu 7,1(3) 233 stbu 8,1(4) 234 235 blr 236.long 0 237.byte 0,12,0x14,0,0,0,3,0 238.size poly1305_emit,.-poly1305_emit 239.globl poly1305_blocks_vsx 240.type poly1305_blocks_vsx,@function 241.align 5 242poly1305_blocks_vsx: 243.localentry poly1305_blocks_vsx,0 244 245 lwz 7,24(3) 246 cmpldi 5,128 247 bge __poly1305_blocks_vsx 248 249 neg 0,7 250 lwz 7,0(3) 251 lwz 8,4(3) 252 lwz 9,8(3) 253 lwz 10,12(3) 254 lwz 11,16(3) 255 256 sldi 8,8,26 257 sldi 12,9,52 258 add 7,7,8 259 srdi 9,9,12 260 sldi 10,10,14 261 addc 7,7,12 262 sldi 8,11,40 263 adde 9,9,10 264 srdi 11,11,24 265 addc 9,9,8 266 addze 11,11 267 268 ld 8,0(3) 269 ld 10,8(3) 270 ld 12,16(3) 271 272 xor 7,7,8 273 xor 9,9,10 274 xor 11,11,12 275 and 7,7,0 276 and 9,9,0 277 and 11,11,0 278 xor 7,7,8 279 xor 9,9,10 280 xor 11,11,12 281 282 li 0,0 283 std 7,0(3) 284 std 9,8(3) 285 std 11,16(3) 286 stw 0,24(3) 287 288 b .Lpoly1305_blocks 289.long 0 290.byte 0,12,0x14,0,0,0,4,0 291.size poly1305_blocks_vsx,.-poly1305_blocks_vsx 292 293.align 5 294__poly1305_mul: 295 mulld 9,6,27 296 mulhdu 10,6,27 297 298 mulld 30,7,29 299 mulhdu 31,7,29 300 addc 9,9,30 301 adde 10,10,31 302 303 mulld 30,6,28 304 mulhdu 11,6,28 305 addc 10,10,30 306 addze 11,11 307 308 mulld 30,7,27 309 mulhdu 31,7,27 310 addc 10,10,30 311 adde 11,11,31 312 313 mulld 30,8,29 314 mulld 31,8,27 315 addc 10,10,30 316 adde 11,11,31 317 318 andc 30,11,0 319 and 8,11,0 320 srdi 31,30,2 321 add 30,30,31 322 addc 6,9,30 323 addze 7,10 324 addze 8,8 325 326 blr 327.long 0 328.byte 0,12,0x14,0,0,0,0,0 329.size __poly1305_mul,.-__poly1305_mul 330 331.align 5 332__poly1305_splat: 333 rldicl 9,6,0,38 334 rldicl 10,6,38,38 335 stw 9,0x00(31) 336 337 rldicl 11,6,12,52 338 slwi 9,10,2 339 stw 10,0x10(31) 340 add 9,9,10 341 stw 9,0x20(31) 342 343 insrdi 11,7,14,38 344 slwi 9,11,2 345 stw 11,0x30(31) 346 add 9,9,11 347 stw 9,0x40(31) 348 349 rldicl 10,7,50,38 350 rldicl 11,7,24,40 351 slwi 9,10,2 352 stw 10,0x50(31) 353 add 9,9,10 354 stw 9,0x60(31) 355 356 insrdi 11,8,3,37 357 slwi 9,11,2 358 stw 11,0x70(31) 359 add 9,9,11 360 stw 9,0x80(31) 361 362 blr 363.long 0 364.byte 0,12,0x14,0,0,0,0,0 365.size __poly1305_splat,.-__poly1305_splat 366 367.align 5 368__poly1305_blocks_vsx: 369 stdu 1,-416(1) 370 mflr 0 371 li 10,191 372 li 11,207 373 li 12,-1 374 stvx 20,10,1 375 addi 10,10,32 376 stvx 21,11,1 377 addi 11,11,32 378 stvx 22,10,1 379 addi 10,10,32 380 stvx 23,11,1 381 addi 11,11,32 382 stvx 24,10,1 383 addi 10,10,32 384 stvx 25,11,1 385 addi 11,11,32 386 stvx 26,10,1 387 addi 10,10,32 388 stvx 27,11,1 389 addi 11,11,32 390 stvx 28,10,1 391 addi 10,10,32 392 stvx 29,11,1 393 addi 11,11,32 394 stvx 30,10,1 395 stvx 31,11,1 396 stw 12,372(1) 397 li 12,-1 398 or 12,12,12 399 std 27,376(1) 400 std 28,384(1) 401 std 29,392(1) 402 std 30,400(1) 403 std 31,408(1) 404 std 0,432(1) 405 406 bl .LPICmeup 407 408 li 27,0x10 409 li 28,0x20 410 li 29,0x30 411 li 30,0x40 412 li 31,0x50 413 .long 0x7FA06699 414 .long 0x7F3B6699 415 .long 0x7F7C6699 416 .long 0x7FFD6699 417 .long 0x7FDE6699 418 419 cmplwi 7,0 420 bne .Lskip_init_vsx 421 422 ld 27,32(3) 423 ld 28,40(3) 424 srdi 29,28,2 425 li 0,3 426 add 29,29,28 427 428 mr 6,27 429 mr 7,28 430 li 8,0 431 addi 31,3,60 432 bl __poly1305_splat 433 434 bl __poly1305_mul 435 addi 31,3,52 436 bl __poly1305_splat 437 438 bl __poly1305_mul 439 addi 31,3,56 440 bl __poly1305_splat 441 442 bl __poly1305_mul 443 addi 31,3,48 444 bl __poly1305_splat 445 446 ld 6,0(3) 447 ld 7,8(3) 448 ld 8,16(3) 449 450 rldicl 9,6,0,38 451 rldicl 10,6,38,38 452 rldicl 11,6,12,52 453 .long 0x7C0901E7 454 insrdi 11,7,14,38 455 .long 0x7C2A01E7 456 rldicl 10,7,50,38 457 .long 0x7C4B01E7 458 rldicl 11,7,24,40 459 .long 0x7C6A01E7 460 insrdi 11,8,3,37 461 .long 0x7C8B01E7 462 li 0,1 463 stw 0,24(3) 464 b .Loaded_vsx 465 466.align 4 467.Lskip_init_vsx: 468 li 27,4 469 li 28,8 470 li 29,12 471 li 30,16 472 .long 0x7C001819 473 .long 0x7C3B1819 474 .long 0x7C5C1819 475 .long 0x7C7D1819 476 .long 0x7C9E1819 477 478.Loaded_vsx: 479 li 27,0x10 480 li 28,0x20 481 li 29,0x30 482 li 30,0x40 483 li 31,0x50 484 li 7,0x60 485 li 8,0x70 486 addi 10,3,64 487 addi 11,1,63 488 489 vxor 20,20,20 490 .long 0xF000A057 491 .long 0xF021A057 492 .long 0xF042A057 493 .long 0xF063A057 494 .long 0xF084A057 495 496 497 .long 0x7EA02699 498 .long 0x7EDB2699 499 .long 0x7EFC2699 500 .long 0x7F1D2699 501 502 503 504 505 506 .long 0xF0B5B057 507 vspltisb 26,4 508 vperm 7,21,22,31 509 vspltisb 28,14 510 .long 0xF115B357 511 512 .long 0x10C5CEC4 513 .long 0x10E7D6C4 514 .long 0x1128DEC4 515 .long 0x1108E6C4 516 vand 5,5,29 517 vand 6,6,29 518 vand 7,7,29 519 vand 8,8,29 520 521 .long 0xF2B7C057 522 vperm 22,23,24,31 523 .long 0xF2F7C357 524 525 .long 0x1295CEC4 526 .long 0x12D6D6C4 527 .long 0x1317DEC4 528 .long 0x12F7E6C4 529 vand 21,21,29 530 vand 20,20,29 531 vand 22,22,29 532 vand 23,23,29 533 534 535 .long 0x11384E8C 536 .long 0x10B52E8C 537 .long 0x10D4368C 538 .long 0x10F63E8C 539 .long 0x1117468C 540 vor 9,9,30 541 542 .long 0x7D5D1A99 543 .long 0x7D605299 544 .long 0x7D9B5299 545 .long 0x7DBC5299 546 .long 0x7DDD5299 547 .long 0x7EBE5299 548 .long 0x7EDF5299 549 .long 0x7EE75299 550 .long 0x7F085299 551 stvx 11,0,11 552 stvx 12,27,11 553 stvx 13,28,11 554 stvx 14,29,11 555 stvx 21,30,11 556 stvx 22,31,11 557 stvx 23,7,11 558 stvx 24,8,11 559 560 addi 4,4,0x40 561 addi 12,12,0x50 562 addi 0,5,-64 563 srdi 0,0,6 564 mtctr 0 565 b .Loop_vsx 566 567.align 4 568.Loop_vsx: 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 .long 0x11E55288 584 .long 0x12055A88 585 .long 0x12256A88 586 .long 0x12466A88 587 588 .long 0x12865288 589 .long 0x1210A0C0 590 .long 0x12865A88 591 .long 0x1231A0C0 592 .long 0x12676A88 593 .long 0x12896288 594 .long 0x11EFA0C0 595 .long 0x12875A88 596 .long 0x1252A0C0 597 lvx 12,31,11 598 .long 0x12885A88 599 .long 0x1273A0C0 600 lvx 11,30,11 601 602 .long 0x104238C0 603 .long 0x100028C0 604 .long 0x106340C0 605 .long 0x102130C0 606 .long 0x108448C0 607 608 .long 0x12887288 609 .long 0x11EFA0C0 610 .long 0x12897288 611 .long 0x1210A0C0 612 .long 0x12875288 613 .long 0x1231A0C0 614 .long 0x12885288 615 .long 0x1252A0C0 616 lvx 14,8,11 617 .long 0x12895288 618 .long 0x1273A0C0 619 lvx 13,7,11 620 621 .long 0x12876288 622 .long 0x11EFA0C0 623 .long 0x12886288 624 .long 0x1210A0C0 625 .long 0x12896288 626 .long 0x1231A0C0 627 .long 0x12855A88 628 .long 0x1252A0C0 629 .long 0x12865A88 630 .long 0x1273A0C0 631 632 633 .long 0x7EA02699 634 .long 0x7EDB2699 635 .long 0x7EFC2699 636 .long 0x7F1D2699 637 638 639 640 641 642 .long 0x12867288 643 .long 0x11EFA0C0 644 .long 0x12877288 645 .long 0x1210A0C0 646 .long 0x12887288 647 .long 0x1231A0C0 648 .long 0x12897288 649 .long 0x1252A0C0 650 .long 0x12856A88 651 .long 0x1273A0C0 652 653 .long 0xF0B5B057 654 vspltisb 26,4 655 vperm 7,21,22,31 656 .long 0xF115B357 657 658 659 .long 0x12805088 660 .long 0x11EFA0C0 661 .long 0x12815088 662 .long 0x1210A0C0 663 .long 0x12825088 664 .long 0x1231A0C0 665 .long 0x12835088 666 .long 0x1252A0C0 667 .long 0x12845088 668 .long 0x1273A0C0 669 670 .long 0xF2B7C057 671 vperm 22,23,24,31 672 .long 0xF2F7C357 673 674 .long 0x12826088 675 .long 0x11EFA0C0 676 .long 0x12836088 677 .long 0x1210A0C0 678 .long 0x12846088 679 .long 0x1231A0C0 680 .long 0x12805888 681 .long 0x1252A0C0 682 lvx 12,27,11 683 .long 0x12815888 684 .long 0x1273A0C0 685 lvx 11,0,11 686 687 .long 0x10C5CEC4 688 .long 0x10E7D6C4 689 .long 0x1128DEC4 690 .long 0x1108E6C4 691 692 .long 0x12817088 693 .long 0x11EFA0C0 694 .long 0x12827088 695 .long 0x1210A0C0 696 .long 0x12837088 697 .long 0x1231A0C0 698 .long 0x12847088 699 .long 0x1252A0C0 700 lvx 14,29,11 701 .long 0x12806888 702 .long 0x1273A0C0 703 lvx 13,28,11 704 705 vand 5,5,29 706 vand 6,6,29 707 vand 7,7,29 708 vand 8,8,29 709 710 .long 0x12846088 711 .long 0x11EFA0C0 712 .long 0x12805888 713 .long 0x1210A0C0 714 .long 0x12815888 715 .long 0x1231A0C0 716 .long 0x12825888 717 .long 0x1252A0C0 718 .long 0x12835888 719 .long 0x1273A0C0 720 721 .long 0x12D6D6C4 722 .long 0x1355CEC4 723 .long 0x1317DEC4 724 .long 0x12F7E6C4 725 726 .long 0x12837088 727 .long 0x11EFA0C0 728 .long 0x12847088 729 .long 0x1210A0C0 730 .long 0x12806888 731 .long 0x1231A0C0 732 .long 0x12816888 733 .long 0x1252A0C0 734 .long 0x12826888 735 .long 0x1273A0C0 736 737 vand 21,21,29 738 vand 26,26,29 739 vand 22,22,29 740 vand 23,23,29 741 742 743 744 745 746 vspltisb 20,2 747 .long 0x1092CEC4 748 .long 0x102FCEC4 749 vand 3,18,29 750 vand 0,15,29 751 .long 0x108498C0 752 .long 0x102180C0 753 754 .long 0x11384E8C 755 .long 0x10B52E8C 756 .long 0x10DA368C 757 .long 0x10F63E8C 758 .long 0x1117468C 759 vor 9,9,30 760 761 .long 0x1264CEC4 762 .long 0x1201CEC4 763 vand 4,4,29 764 vand 1,1,29 765 .long 0x100098C0 766 .long 0x105180C0 767 768 .long 0x1273A5C4 769 .long 0x1222CEC4 770 vand 2,2,29 771 .long 0x100098C0 772 .long 0x106388C0 773 774 .long 0x11E0CEC4 775 .long 0x1243CEC4 776 vand 0,0,29 777 vand 3,3,29 778 .long 0x102178C0 779 .long 0x108490C0 780 781 addi 4,4,0x40 782 bdnz .Loop_vsx 783 784 neg 5,5 785 andi. 5,5,0x30 786 sub 4,4,5 787 788 .long 0x7D5D1E99 789 .long 0x7D605699 790 .long 0x7D9B5699 791 .long 0x7DBC5699 792 .long 0x7DDD5699 793 794.Last_vsx: 795 .long 0x11E55288 796 .long 0x12065288 797 .long 0x12275288 798 .long 0x12485288 799 .long 0x12695288 800 801 .long 0x12896288 802 .long 0x11EFA0C0 803 .long 0x12855A88 804 .long 0x1210A0C0 805 .long 0x12865A88 806 .long 0x1231A0C0 807 .long 0x12875A88 808 .long 0x1252A0C0 809 .long 0x7D9F5699 810 .long 0x12885A88 811 .long 0x1273A0C0 812 .long 0x7D7E5699 813 814 .long 0x104238C0 815 .long 0x100028C0 816 .long 0x106340C0 817 .long 0x102130C0 818 .long 0x108448C0 819 820 .long 0x12887288 821 .long 0x11EFA0C0 822 .long 0x12897288 823 .long 0x1210A0C0 824 .long 0x12856A88 825 .long 0x1231A0C0 826 .long 0x12866A88 827 .long 0x1252A0C0 828 .long 0x7DC85699 829 .long 0x12876A88 830 .long 0x1273A0C0 831 .long 0x7DA75699 832 833 .long 0x12876288 834 .long 0x11EFA0C0 835 .long 0x12886288 836 .long 0x1210A0C0 837 .long 0x12896288 838 .long 0x1231A0C0 839 .long 0x12855A88 840 .long 0x1252A0C0 841 .long 0x12865A88 842 .long 0x1273A0C0 843 844 .long 0x12867288 845 .long 0x11EFA0C0 846 .long 0x12877288 847 .long 0x1210A0C0 848 .long 0x12887288 849 .long 0x1231A0C0 850 .long 0x12897288 851 .long 0x1252A0C0 852 .long 0x12856A88 853 .long 0x1273A0C0 854 855 856 .long 0x12805088 857 .long 0x11EFA0C0 858 .long 0x12815088 859 .long 0x1210A0C0 860 .long 0x12825088 861 .long 0x1231A0C0 862 .long 0x12835088 863 .long 0x1252A0C0 864 .long 0x12845088 865 .long 0x1273A0C0 866 867 .long 0x12826088 868 .long 0x11EFA0C0 869 .long 0x12836088 870 .long 0x1210A0C0 871 .long 0x12846088 872 .long 0x1231A0C0 873 .long 0x12805888 874 .long 0x1252A0C0 875 .long 0x7D9B5699 876 .long 0x12815888 877 .long 0x1273A0C0 878 .long 0x7D605699 879 880 .long 0x12817088 881 .long 0x11EFA0C0 882 .long 0x12827088 883 .long 0x1210A0C0 884 .long 0x12837088 885 .long 0x1231A0C0 886 .long 0x12847088 887 .long 0x1252A0C0 888 .long 0x7DDD5699 889 .long 0x12806888 890 .long 0x1273A0C0 891 .long 0x7DBC5699 892 893 .long 0x12846088 894 .long 0x11EFA0C0 895 .long 0x12805888 896 .long 0x1210A0C0 897 .long 0x12815888 898 .long 0x1231A0C0 899 .long 0x12825888 900 .long 0x1252A0C0 901 .long 0x12835888 902 .long 0x1273A0C0 903 904 .long 0x12837088 905 .long 0x11EFA0C0 906 .long 0x12847088 907 .long 0x1210A0C0 908 .long 0x12806888 909 .long 0x1231A0C0 910 .long 0x12816888 911 .long 0x1252A0C0 912 .long 0x12826888 913 .long 0x1273A0C0 914 915 916 917 918 .long 0xF00F7A57 919 .long 0xF0308257 920 .long 0xF0518A57 921 .long 0xF0729257 922 .long 0xF0939A57 923 .long 0x11EF00C0 924 .long 0x121008C0 925 .long 0x123110C0 926 .long 0x125218C0 927 .long 0x127320C0 928 929 930 931 932 vspltisb 20,2 933 .long 0x1092CEC4 934 .long 0x102FCEC4 935 vand 3,18,29 936 vand 0,15,29 937 .long 0x108498C0 938 .long 0x102180C0 939 940 .long 0x1264CEC4 941 .long 0x1201CEC4 942 vand 4,4,29 943 vand 1,1,29 944 .long 0x100098C0 945 .long 0x105180C0 946 947 .long 0x1273A5C4 948 .long 0x1222CEC4 949 vand 2,2,29 950 .long 0x100098C0 951 .long 0x106388C0 952 953 .long 0x11E0CEC4 954 .long 0x1243CEC4 955 vand 0,0,29 956 vand 3,3,29 957 .long 0x102178C0 958 .long 0x108490C0 959 960 beq .Ldone_vsx 961 962 add 6,12,5 963 964 965 .long 0x7EA02699 966 .long 0x7EDB2699 967 .long 0x7EFC2699 968 .long 0x7F1D2699 969 970 971 972 973 974 .long 0xF0B5B057 975 vspltisb 26,4 976 vperm 7,21,22,31 977 .long 0xF115B357 978 979 .long 0x10C5CEC4 980 .long 0x10E7D6C4 981 .long 0x1128DEC4 982 .long 0x1108E6C4 983 vand 5,5,29 984 vand 6,6,29 985 vand 7,7,29 986 vand 8,8,29 987 988 .long 0xF297C057 989 vperm 21,23,24,31 990 .long 0xF2D7C357 991 992 .long 0x7DE03699 993 .long 0x7E1D3699 994 995 .long 0x12F4CEC4 996 .long 0x12B5D6C4 997 .long 0x1316DEC4 998 .long 0x12D6E6C4 999 vand 20,20,29 1000 vand 23,23,29 1001 vand 21,21,29 1002 vand 22,22,29 1003 1004 1005 .long 0x11384E8C 1006 .long 0x10B42E8C 1007 .long 0x10D7368C 1008 .long 0x10F53E8C 1009 .long 0x1116468C 1010 vor 9,9,30 1011 1012 vperm 0,0,0,15 1013 vand 5,5, 16 1014 vperm 1,1,1,15 1015 vand 6,6, 16 1016 vperm 2,2,2,15 1017 vand 7,7, 16 1018 vperm 3,3,3,15 1019 vand 8,8, 16 1020 vperm 4,4,4,15 1021 vand 9,9, 16 1022 1023 .long 0x10A500C0 1024 vxor 0,0,0 1025 .long 0x10C608C0 1026 vxor 1,1,1 1027 .long 0x10E710C0 1028 vxor 2,2,2 1029 .long 0x110818C0 1030 vxor 3,3,3 1031 .long 0x112920C0 1032 vxor 4,4,4 1033 1034 xor. 5,5,5 1035 b .Last_vsx 1036 1037.align 4 1038.Ldone_vsx: 1039 ld 0,432(1) 1040 li 27,4 1041 li 28,8 1042 li 29,12 1043 li 30,16 1044 .long 0x7C001919 1045 .long 0x7C3B1919 1046 .long 0x7C5C1919 1047 .long 0x7C7D1919 1048 .long 0x7C9E1919 1049 1050 lwz 12,372(1) 1051 mtlr 0 1052 li 10,191 1053 li 11,207 1054 or 12,12,12 1055 lvx 20,10,1 1056 addi 10,10,32 1057 lvx 21,11,1 1058 addi 11,11,32 1059 lvx 22,10,1 1060 addi 10,10,32 1061 lvx 23,11,1 1062 addi 11,11,32 1063 lvx 24,10,1 1064 addi 10,10,32 1065 lvx 25,11,1 1066 addi 11,11,32 1067 lvx 26,10,1 1068 addi 10,10,32 1069 lvx 27,11,1 1070 addi 11,11,32 1071 lvx 28,10,1 1072 addi 10,10,32 1073 lvx 29,11,1 1074 addi 11,11,32 1075 lvx 30,10,1 1076 lvx 31,11,1 1077 ld 27,376(1) 1078 ld 28,384(1) 1079 ld 29,392(1) 1080 ld 30,400(1) 1081 ld 31,408(1) 1082 addi 1,1,416 1083 blr 1084.long 0 1085.byte 0,12,0x04,1,0x80,5,4,0 1086.long 0 1087.size __poly1305_blocks_vsx,.-__poly1305_blocks_vsx 1088 1089.align 6 1090.LPICmeup: 1091 mflr 0 1092 bcl 20,31,$+4 1093 mflr 12 1094 addi 12,12,56 1095 mtlr 0 1096 blr 1097.long 0 1098.byte 0,12,0x14,0,0,0,0,0 1099.space 28 1100 1101.long 0x03ffffff,0x00000000 1102.long 0x03ffffff,0x00000000 1103.long 0x0000001a,0x00000000 1104.long 0x0000001a,0x00000000 1105.long 0x00000028,0x00000000 1106.long 0x00000028,0x00000000 1107.long 0x0e0f0001,0x00000000 1108.long 0x1e1f1011,0x00000000 1109.long 0x01000000,0x01000000 1110.long 0x01000000,0x01000000 1111.long 0x03020100,0x07060504 1112.long 0x0b0a0908,0x0f0e0d0c 1113 1114.long 0x00000000,0x00000000 1115.long 0x04050607,0x00000000 1116.long 0x00000000,0x04050607 1117.long 0x00000000,0x00000000 1118.long 0x00000000,0x00000000 1119.long 0x00000000,0x04050607 1120 1121.long 0x00000000,0xffffffff 1122.long 0xffffffff,0xffffffff 1123.long 0x00000000,0xffffffff 1124.long 0x00000000,0xffffffff 1125.long 0x00000000,0x00000000 1126.long 0x00000000,0xffffffff 1127.byte 80,111,108,121,49,51,48,53,32,102,111,114,32,80,80,67,44,67,82,89,80,84,79,71,65,77,83,32,98,121,32,64,100,111,116,45,97,115,109,0 1128.align 2 1129