diff options
author | beck <> | 2000-03-19 11:13:58 +0000 |
---|---|---|
committer | beck <> | 2000-03-19 11:13:58 +0000 |
commit | 796d609550df3a33fc11468741c5d2f6d3df4c11 (patch) | |
tree | 6c6d539061caa20372dad0ac4ddb1dfae2fbe7fe /src/lib/libcrypto/bn/asm | |
parent | 5be3114c1fd7e0dfea1e38d3abb4cbba75244419 (diff) | |
download | openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.gz openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.bz2 openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.zip |
OpenSSL 0.9.5 merge
*warning* this bumps shared lib minors for libssl and libcrypto from 2.1 to 2.2
if you are using the ssl26 packages for ssh and other things to work you will
need to get new ones (see ~beck/libsslsnap/<arch>) on cvs or ~beck/src-patent.tar.gz on cvs
Diffstat (limited to 'src/lib/libcrypto/bn/asm')
-rw-r--r-- | src/lib/libcrypto/bn/asm/README | 9 | ||||
-rw-r--r-- | src/lib/libcrypto/bn/asm/alpha.s | 2415 | ||||
-rw-r--r-- | src/lib/libcrypto/bn/asm/mips3.s | 143 |
3 files changed, 1932 insertions, 635 deletions
diff --git a/src/lib/libcrypto/bn/asm/README b/src/lib/libcrypto/bn/asm/README index d93fbff77f..86bf64cfc2 100644 --- a/src/lib/libcrypto/bn/asm/README +++ b/src/lib/libcrypto/bn/asm/README | |||
@@ -1,5 +1,5 @@ | |||
1 | All assember in this directory are just version of the file | 1 | All assember in this directory are just version of the file |
2 | crypto/bn/bn_mulw.c. | 2 | crypto/bn/bn_asm.c. |
3 | 3 | ||
4 | Quite a few of these files are just the assember output from gcc since on | 4 | Quite a few of these files are just the assember output from gcc since on |
5 | quite a few machines they are 2 times faster than the system compiler. | 5 | quite a few machines they are 2 times faster than the system compiler. |
@@ -15,13 +15,6 @@ On the 2 alpha C compilers I had access to, it was not possible to do | |||
15 | were 64 bits). So the hand assember gives access to the 128 bit result and | 15 | were 64 bits). So the hand assember gives access to the 128 bit result and |
16 | a 2 times speedup :-). | 16 | a 2 times speedup :-). |
17 | 17 | ||
18 | The x86xxxx.obj files are the assembled version of x86xxxx.asm files. | ||
19 | I had such a hard time finding a macro assember for Microsoft, I decided to | ||
20 | include the object file to save others the hassle :-). | ||
21 | |||
22 | I have also included uu encoded versions of the .obj incase they get | ||
23 | trashed. | ||
24 | |||
25 | There are 2 versions of assember for the HP PA-RISC. | 18 | There are 2 versions of assember for the HP PA-RISC. |
26 | pa-risc.s is the origional one which works fine. | 19 | pa-risc.s is the origional one which works fine. |
27 | pa-risc2.s is a new version that often generates warnings but if the | 20 | pa-risc2.s is a new version that often generates warnings but if the |
diff --git a/src/lib/libcrypto/bn/asm/alpha.s b/src/lib/libcrypto/bn/asm/alpha.s index a351694ca2..555ff0b92d 100644 --- a/src/lib/libcrypto/bn/asm/alpha.s +++ b/src/lib/libcrypto/bn/asm/alpha.s | |||
@@ -694,567 +694,1868 @@ bn_mul_comba8: | |||
694 | bn_mul_comba8..ng: | 694 | bn_mul_comba8..ng: |
695 | .frame $30,0,$26,0 | 695 | .frame $30,0,$26,0 |
696 | .prologue 0 | 696 | .prologue 0 |
697 | 697 | ldq $1, 0($17) | |
698 | subq $30, 16, $30 | 698 | ldq $2, 0($18) |
699 | ldq $0, 0($17) | 699 | zapnot $1, 15, $7 |
700 | srl $2, 32, $8 | ||
701 | mulq $8, $7, $22 | ||
702 | srl $1, 32, $6 | ||
703 | zapnot $2, 15, $5 | ||
704 | mulq $5, $6, $4 | ||
705 | mulq $7, $5, $24 | ||
706 | addq $22, $4, $22 | ||
707 | cmpult $22, $4, $1 | ||
708 | mulq $6, $8, $3 | ||
709 | beq $1, $173 | ||
710 | bis $31, 1, $1 | ||
711 | sll $1, 32, $1 | ||
712 | addq $3, $1, $3 | ||
713 | $173: | ||
714 | sll $22, 32, $4 | ||
715 | addq $24, $4, $24 | ||
716 | stq $24, 0($16) | ||
717 | ldq $2, 0($17) | ||
718 | ldq $1, 8($18) | ||
719 | zapnot $2, 15, $7 | ||
720 | srl $1, 32, $8 | ||
721 | mulq $8, $7, $25 | ||
722 | zapnot $1, 15, $5 | ||
723 | mulq $7, $5, $0 | ||
724 | srl $2, 32, $6 | ||
725 | mulq $5, $6, $23 | ||
726 | mulq $6, $8, $6 | ||
727 | srl $22, 32, $1 | ||
728 | cmpult $24, $4, $2 | ||
729 | addq $3, $1, $3 | ||
730 | addq $2, $3, $22 | ||
731 | addq $25, $23, $25 | ||
732 | cmpult $25, $23, $1 | ||
733 | bis $31, 1, $2 | ||
734 | beq $1, $177 | ||
735 | sll $2, 32, $1 | ||
736 | addq $6, $1, $6 | ||
737 | $177: | ||
738 | sll $25, 32, $23 | ||
700 | ldq $1, 0($18) | 739 | ldq $1, 0($18) |
701 | stq $9, 0($30) | 740 | addq $0, $23, $0 |
702 | stq $10, 8($30) | 741 | bis $0, $0, $7 |
703 | ldq $2, 8($17) | 742 | ldq $3, 8($17) |
704 | ldq $3, 8($18) | 743 | addq $22, $7, $22 |
705 | ldq $4, 16($17) | 744 | srl $1, 32, $8 |
706 | ldq $5, 16($18) | 745 | cmpult $22, $7, $4 |
707 | ldq $6, 24($17) | 746 | zapnot $3, 15, $7 |
708 | ldq $7, 24($18) | 747 | mulq $8, $7, $28 |
709 | ldq $8, 8($17) | 748 | zapnot $1, 15, $5 |
710 | ldq $22, 8($18) | 749 | mulq $7, $5, $21 |
711 | ldq $23, 8($17) | 750 | srl $25, 32, $1 |
712 | ldq $24, 8($18) | 751 | cmpult $0, $23, $2 |
713 | ldq $25, 8($17) | 752 | addq $6, $1, $6 |
714 | ldq $27, 8($18) | 753 | addq $2, $6, $6 |
715 | ldq $28, 8($17) | 754 | addq $4, $6, $24 |
716 | ldq $21, 8($18) | 755 | srl $3, 32, $6 |
717 | bis $31, $31, $9 | 756 | mulq $5, $6, $2 |
718 | mulq $0, $1, $20 | 757 | mulq $6, $8, $6 |
719 | umulh $0, $1, $19 | 758 | addq $28, $2, $28 |
720 | stq $20, 0($16) | 759 | cmpult $28, $2, $1 |
721 | bis $31, $31, $20 | 760 | bis $31, 1, $2 |
722 | mulq $0, $3, $10 | 761 | beq $1, $181 |
723 | umulh $0, $3, $17 | 762 | sll $2, 32, $1 |
724 | addq $19, $10, $19 | 763 | addq $6, $1, $6 |
725 | cmpult $19, $10, $18 | 764 | $181: |
726 | addq $18, $17, $17 | 765 | sll $28, 32, $2 |
727 | addq $9, $17, $9 | 766 | addq $21, $2, $21 |
728 | cmpult $9, $17, $10 | 767 | bis $21, $21, $7 |
729 | addq $20, $10, $20 | 768 | addq $22, $7, $22 |
730 | mulq $2, $1, $18 | 769 | stq $22, 8($16) |
731 | umulh $2, $1, $17 | 770 | ldq $3, 16($17) |
732 | addq $19, $18, $19 | 771 | ldq $1, 0($18) |
733 | cmpult $19, $18, $10 | 772 | cmpult $22, $7, $4 |
734 | addq $10, $17, $17 | 773 | zapnot $3, 15, $7 |
735 | addq $9, $17, $9 | 774 | srl $1, 32, $8 |
736 | cmpult $9, $17, $18 | 775 | mulq $8, $7, $22 |
737 | addq $20, $18, $20 | 776 | zapnot $1, 15, $5 |
738 | stq $19, 8($16) | 777 | mulq $7, $5, $20 |
739 | bis $31, $31, $19 | 778 | srl $28, 32, $1 |
740 | mulq $0, $5, $10 | 779 | cmpult $21, $2, $2 |
741 | umulh $0, $5, $17 | 780 | addq $6, $1, $6 |
742 | addq $9, $10, $9 | 781 | addq $2, $6, $6 |
743 | cmpult $9, $10, $18 | 782 | addq $4, $6, $6 |
744 | addq $18, $17, $17 | 783 | addq $24, $6, $24 |
745 | addq $20, $17, $20 | 784 | cmpult $24, $6, $23 |
746 | cmpult $20, $17, $10 | 785 | srl $3, 32, $6 |
747 | addq $19, $10, $19 | 786 | mulq $5, $6, $2 |
748 | mulq $2, $3, $18 | 787 | mulq $6, $8, $6 |
749 | umulh $2, $3, $17 | 788 | addq $22, $2, $22 |
750 | addq $9, $18, $9 | 789 | cmpult $22, $2, $1 |
751 | cmpult $9, $18, $10 | 790 | bis $31, 1, $2 |
752 | addq $10, $17, $17 | 791 | beq $1, $185 |
753 | addq $20, $17, $20 | 792 | sll $2, 32, $1 |
754 | cmpult $20, $17, $18 | 793 | addq $6, $1, $6 |
755 | addq $19, $18, $19 | 794 | $185: |
756 | mulq $4, $1, $10 | 795 | sll $22, 32, $2 |
757 | umulh $4, $1, $17 | 796 | ldq $1, 8($18) |
758 | addq $9, $10, $9 | ||
759 | cmpult $9, $10, $18 | ||
760 | addq $18, $17, $17 | ||
761 | addq $20, $17, $20 | ||
762 | cmpult $20, $17, $10 | ||
763 | addq $19, $10, $19 | ||
764 | stq $9, 16($16) | ||
765 | bis $31, $31, $9 | ||
766 | mulq $0, $7, $18 | ||
767 | umulh $0, $7, $17 | ||
768 | addq $20, $18, $20 | ||
769 | cmpult $20, $18, $10 | ||
770 | addq $10, $17, $17 | ||
771 | addq $19, $17, $19 | ||
772 | cmpult $19, $17, $18 | ||
773 | addq $9, $18, $9 | ||
774 | mulq $2, $5, $10 | ||
775 | umulh $2, $5, $17 | ||
776 | addq $20, $10, $20 | ||
777 | cmpult $20, $10, $18 | ||
778 | addq $18, $17, $17 | ||
779 | addq $19, $17, $19 | ||
780 | cmpult $19, $17, $10 | ||
781 | addq $9, $10, $9 | ||
782 | mulq $4, $3, $18 | ||
783 | umulh $4, $3, $17 | ||
784 | addq $20, $18, $20 | ||
785 | cmpult $20, $18, $10 | ||
786 | addq $10, $17, $17 | ||
787 | addq $19, $17, $19 | ||
788 | cmpult $19, $17, $18 | ||
789 | addq $9, $18, $9 | ||
790 | mulq $6, $1, $10 | ||
791 | umulh $6, $1, $17 | ||
792 | addq $20, $10, $20 | ||
793 | cmpult $20, $10, $18 | ||
794 | addq $18, $17, $17 | ||
795 | addq $19, $17, $19 | ||
796 | cmpult $19, $17, $10 | ||
797 | addq $9, $10, $9 | ||
798 | stq $20, 24($16) | ||
799 | bis $31, $31, $20 | ||
800 | mulq $0, $22, $18 | ||
801 | umulh $0, $22, $17 | ||
802 | addq $19, $18, $19 | ||
803 | cmpult $19, $18, $10 | ||
804 | addq $10, $17, $17 | ||
805 | addq $9, $17, $9 | ||
806 | cmpult $9, $17, $18 | ||
807 | addq $20, $18, $20 | ||
808 | mulq $2, $7, $10 | ||
809 | umulh $2, $7, $17 | ||
810 | addq $19, $10, $19 | ||
811 | cmpult $19, $10, $18 | ||
812 | addq $18, $17, $17 | ||
813 | addq $9, $17, $9 | ||
814 | cmpult $9, $17, $10 | ||
815 | addq $20, $10, $20 | ||
816 | mulq $4, $5, $18 | ||
817 | umulh $4, $5, $17 | ||
818 | addq $19, $18, $19 | ||
819 | cmpult $19, $18, $10 | ||
820 | addq $10, $17, $17 | ||
821 | addq $9, $17, $9 | ||
822 | cmpult $9, $17, $18 | ||
823 | addq $20, $18, $20 | ||
824 | mulq $6, $3, $10 | ||
825 | umulh $6, $3, $17 | ||
826 | addq $19, $10, $19 | ||
827 | cmpult $19, $10, $18 | ||
828 | addq $18, $17, $17 | ||
829 | addq $9, $17, $9 | ||
830 | cmpult $9, $17, $10 | ||
831 | addq $20, $10, $20 | ||
832 | mulq $8, $1, $18 | ||
833 | umulh $8, $1, $17 | ||
834 | addq $19, $18, $19 | ||
835 | cmpult $19, $18, $10 | ||
836 | addq $10, $17, $17 | ||
837 | addq $9, $17, $9 | ||
838 | cmpult $9, $17, $18 | ||
839 | addq $20, $18, $20 | ||
840 | stq $19, 32($16) | ||
841 | bis $31, $31, $19 | ||
842 | mulq $0, $24, $10 | ||
843 | umulh $0, $24, $17 | ||
844 | addq $9, $10, $9 | ||
845 | cmpult $9, $10, $18 | ||
846 | addq $18, $17, $17 | ||
847 | addq $20, $17, $20 | ||
848 | cmpult $20, $17, $10 | ||
849 | addq $19, $10, $19 | ||
850 | mulq $2, $22, $18 | ||
851 | umulh $2, $22, $17 | ||
852 | addq $9, $18, $9 | ||
853 | cmpult $9, $18, $10 | ||
854 | addq $10, $17, $17 | ||
855 | addq $20, $17, $20 | ||
856 | cmpult $20, $17, $18 | ||
857 | addq $19, $18, $19 | ||
858 | mulq $4, $7, $10 | ||
859 | umulh $4, $7, $17 | ||
860 | addq $9, $10, $9 | ||
861 | cmpult $9, $10, $18 | ||
862 | addq $18, $17, $17 | ||
863 | addq $20, $17, $20 | ||
864 | cmpult $20, $17, $10 | ||
865 | addq $19, $10, $19 | ||
866 | mulq $6, $5, $18 | ||
867 | umulh $6, $5, $17 | ||
868 | addq $9, $18, $9 | ||
869 | cmpult $9, $18, $10 | ||
870 | addq $10, $17, $17 | ||
871 | addq $20, $17, $20 | ||
872 | cmpult $20, $17, $18 | ||
873 | addq $19, $18, $19 | ||
874 | mulq $8, $3, $10 | ||
875 | umulh $8, $3, $17 | ||
876 | addq $9, $10, $9 | ||
877 | cmpult $9, $10, $18 | ||
878 | addq $18, $17, $17 | ||
879 | addq $20, $17, $20 | ||
880 | cmpult $20, $17, $10 | ||
881 | addq $19, $10, $19 | ||
882 | mulq $23, $1, $18 | ||
883 | umulh $23, $1, $17 | ||
884 | addq $9, $18, $9 | ||
885 | cmpult $9, $18, $10 | ||
886 | addq $10, $17, $17 | ||
887 | addq $20, $17, $20 | ||
888 | cmpult $20, $17, $18 | ||
889 | addq $19, $18, $19 | ||
890 | stq $9, 40($16) | ||
891 | bis $31, $31, $9 | ||
892 | mulq $0, $27, $10 | ||
893 | umulh $0, $27, $17 | ||
894 | addq $20, $10, $20 | ||
895 | cmpult $20, $10, $18 | ||
896 | addq $18, $17, $17 | ||
897 | addq $19, $17, $19 | ||
898 | cmpult $19, $17, $10 | ||
899 | addq $9, $10, $9 | ||
900 | mulq $2, $24, $18 | ||
901 | umulh $2, $24, $17 | ||
902 | addq $20, $18, $20 | ||
903 | cmpult $20, $18, $10 | ||
904 | addq $10, $17, $17 | ||
905 | addq $19, $17, $19 | ||
906 | cmpult $19, $17, $18 | ||
907 | addq $9, $18, $9 | ||
908 | mulq $4, $22, $10 | ||
909 | umulh $4, $22, $17 | ||
910 | addq $20, $10, $20 | ||
911 | cmpult $20, $10, $18 | ||
912 | addq $18, $17, $17 | ||
913 | addq $19, $17, $19 | ||
914 | cmpult $19, $17, $10 | ||
915 | addq $9, $10, $9 | ||
916 | mulq $6, $7, $18 | ||
917 | umulh $6, $7, $17 | ||
918 | addq $20, $18, $20 | ||
919 | cmpult $20, $18, $10 | ||
920 | addq $10, $17, $17 | ||
921 | addq $19, $17, $19 | ||
922 | cmpult $19, $17, $18 | ||
923 | addq $9, $18, $9 | ||
924 | mulq $8, $5, $10 | ||
925 | umulh $8, $5, $17 | ||
926 | addq $20, $10, $20 | ||
927 | cmpult $20, $10, $18 | ||
928 | addq $18, $17, $17 | ||
929 | addq $19, $17, $19 | ||
930 | cmpult $19, $17, $10 | ||
931 | addq $9, $10, $9 | ||
932 | mulq $23, $3, $18 | ||
933 | umulh $23, $3, $17 | ||
934 | addq $20, $18, $20 | ||
935 | cmpult $20, $18, $10 | ||
936 | addq $10, $17, $17 | ||
937 | addq $19, $17, $19 | ||
938 | cmpult $19, $17, $18 | ||
939 | addq $9, $18, $9 | ||
940 | mulq $25, $1, $10 | ||
941 | umulh $25, $1, $17 | ||
942 | addq $20, $10, $20 | ||
943 | cmpult $20, $10, $18 | ||
944 | addq $18, $17, $17 | ||
945 | addq $19, $17, $19 | ||
946 | cmpult $19, $17, $10 | ||
947 | addq $9, $10, $9 | ||
948 | stq $20, 48($16) | ||
949 | bis $31, $31, $20 | ||
950 | mulq $0, $21, $18 | ||
951 | umulh $0, $21, $17 | ||
952 | addq $19, $18, $19 | ||
953 | cmpult $19, $18, $10 | ||
954 | addq $10, $17, $17 | ||
955 | addq $9, $17, $9 | ||
956 | cmpult $9, $17, $18 | ||
957 | addq $20, $18, $20 | ||
958 | mulq $2, $27, $10 | ||
959 | umulh $2, $27, $17 | ||
960 | addq $19, $10, $19 | ||
961 | cmpult $19, $10, $18 | ||
962 | addq $18, $17, $17 | ||
963 | addq $9, $17, $9 | ||
964 | cmpult $9, $17, $0 | ||
965 | addq $20, $0, $20 | ||
966 | mulq $4, $24, $10 | ||
967 | umulh $4, $24, $18 | ||
968 | addq $19, $10, $19 | ||
969 | cmpult $19, $10, $17 | ||
970 | addq $17, $18, $18 | ||
971 | addq $9, $18, $9 | ||
972 | cmpult $9, $18, $0 | ||
973 | addq $20, $0, $20 | ||
974 | mulq $6, $22, $10 | ||
975 | umulh $6, $22, $17 | ||
976 | addq $19, $10, $19 | ||
977 | cmpult $19, $10, $18 | ||
978 | addq $18, $17, $17 | ||
979 | addq $9, $17, $9 | ||
980 | cmpult $9, $17, $0 | ||
981 | addq $20, $0, $20 | ||
982 | mulq $8, $7, $10 | ||
983 | umulh $8, $7, $18 | ||
984 | addq $19, $10, $19 | ||
985 | cmpult $19, $10, $17 | ||
986 | addq $17, $18, $18 | ||
987 | addq $9, $18, $9 | ||
988 | cmpult $9, $18, $0 | ||
989 | addq $20, $0, $20 | ||
990 | mulq $23, $5, $10 | ||
991 | umulh $23, $5, $17 | ||
992 | addq $19, $10, $19 | ||
993 | cmpult $19, $10, $18 | ||
994 | addq $18, $17, $17 | ||
995 | addq $9, $17, $9 | ||
996 | cmpult $9, $17, $0 | ||
997 | addq $20, $0, $20 | ||
998 | mulq $25, $3, $10 | ||
999 | umulh $25, $3, $18 | ||
1000 | addq $19, $10, $19 | ||
1001 | cmpult $19, $10, $17 | ||
1002 | addq $17, $18, $18 | ||
1003 | addq $9, $18, $9 | ||
1004 | cmpult $9, $18, $0 | ||
1005 | addq $20, $0, $20 | ||
1006 | mulq $28, $1, $10 | ||
1007 | umulh $28, $1, $17 | ||
1008 | addq $19, $10, $19 | ||
1009 | cmpult $19, $10, $18 | ||
1010 | addq $18, $17, $17 | ||
1011 | addq $9, $17, $9 | ||
1012 | cmpult $9, $17, $0 | ||
1013 | addq $20, $0, $20 | ||
1014 | stq $19, 56($16) | ||
1015 | bis $31, $31, $19 | ||
1016 | mulq $2, $21, $10 | ||
1017 | umulh $2, $21, $18 | ||
1018 | addq $9, $10, $9 | ||
1019 | cmpult $9, $10, $17 | ||
1020 | addq $17, $18, $18 | ||
1021 | addq $20, $18, $20 | ||
1022 | cmpult $20, $18, $0 | ||
1023 | addq $19, $0, $19 | ||
1024 | mulq $4, $27, $1 | ||
1025 | umulh $4, $27, $10 | ||
1026 | addq $9, $1, $9 | ||
1027 | cmpult $9, $1, $17 | ||
1028 | addq $17, $10, $10 | ||
1029 | addq $20, $10, $20 | ||
1030 | cmpult $20, $10, $18 | ||
1031 | addq $19, $18, $19 | ||
1032 | mulq $6, $24, $0 | ||
1033 | umulh $6, $24, $2 | ||
1034 | addq $9, $0, $9 | ||
1035 | cmpult $9, $0, $1 | ||
1036 | addq $1, $2, $2 | ||
1037 | addq $20, $2, $20 | ||
1038 | cmpult $20, $2, $17 | ||
1039 | addq $19, $17, $19 | ||
1040 | mulq $8, $22, $10 | ||
1041 | umulh $8, $22, $18 | ||
1042 | addq $9, $10, $9 | ||
1043 | cmpult $9, $10, $0 | ||
1044 | addq $0, $18, $18 | ||
1045 | addq $20, $18, $20 | ||
1046 | cmpult $20, $18, $1 | ||
1047 | addq $19, $1, $19 | ||
1048 | mulq $23, $7, $2 | ||
1049 | umulh $23, $7, $17 | ||
1050 | addq $9, $2, $9 | ||
1051 | cmpult $9, $2, $10 | ||
1052 | addq $10, $17, $17 | ||
1053 | addq $20, $17, $20 | ||
1054 | cmpult $20, $17, $0 | ||
1055 | addq $19, $0, $19 | ||
1056 | mulq $25, $5, $18 | ||
1057 | umulh $25, $5, $1 | ||
1058 | addq $9, $18, $9 | ||
1059 | cmpult $9, $18, $2 | ||
1060 | addq $2, $1, $1 | ||
1061 | addq $20, $1, $20 | ||
1062 | cmpult $20, $1, $10 | ||
1063 | addq $19, $10, $19 | ||
1064 | mulq $28, $3, $17 | ||
1065 | umulh $28, $3, $0 | ||
1066 | addq $9, $17, $9 | ||
1067 | cmpult $9, $17, $18 | ||
1068 | addq $18, $0, $0 | ||
1069 | addq $20, $0, $20 | ||
1070 | cmpult $20, $0, $2 | ||
1071 | addq $19, $2, $19 | ||
1072 | stq $9, 64($16) | ||
1073 | bis $31, $31, $9 | ||
1074 | mulq $4, $21, $1 | ||
1075 | umulh $4, $21, $10 | ||
1076 | addq $20, $1, $20 | ||
1077 | cmpult $20, $1, $17 | ||
1078 | addq $17, $10, $10 | ||
1079 | addq $19, $10, $19 | ||
1080 | cmpult $19, $10, $18 | ||
1081 | addq $9, $18, $9 | ||
1082 | mulq $6, $27, $0 | ||
1083 | umulh $6, $27, $2 | ||
1084 | addq $20, $0, $20 | ||
1085 | cmpult $20, $0, $3 | ||
1086 | addq $3, $2, $2 | ||
1087 | addq $19, $2, $19 | ||
1088 | cmpult $19, $2, $1 | ||
1089 | addq $9, $1, $9 | ||
1090 | mulq $8, $24, $17 | ||
1091 | umulh $8, $24, $10 | ||
1092 | addq $20, $17, $20 | ||
1093 | cmpult $20, $17, $18 | ||
1094 | addq $18, $10, $10 | ||
1095 | addq $19, $10, $19 | ||
1096 | cmpult $19, $10, $4 | ||
1097 | addq $9, $4, $9 | ||
1098 | mulq $23, $22, $0 | ||
1099 | umulh $23, $22, $3 | ||
1100 | addq $20, $0, $20 | ||
1101 | cmpult $20, $0, $2 | ||
1102 | addq $2, $3, $3 | ||
1103 | addq $19, $3, $19 | ||
1104 | cmpult $19, $3, $1 | ||
1105 | addq $9, $1, $9 | ||
1106 | mulq $25, $7, $17 | ||
1107 | umulh $25, $7, $18 | ||
1108 | addq $20, $17, $20 | ||
1109 | cmpult $20, $17, $10 | ||
1110 | addq $10, $18, $18 | ||
1111 | addq $19, $18, $19 | ||
1112 | cmpult $19, $18, $4 | ||
1113 | addq $9, $4, $9 | ||
1114 | mulq $28, $5, $0 | ||
1115 | umulh $28, $5, $2 | ||
1116 | addq $20, $0, $20 | ||
1117 | cmpult $20, $0, $3 | ||
1118 | addq $3, $2, $2 | ||
1119 | addq $19, $2, $19 | ||
1120 | cmpult $19, $2, $1 | ||
1121 | addq $9, $1, $9 | ||
1122 | stq $20, 72($16) | ||
1123 | bis $31, $31, $20 | ||
1124 | mulq $6, $21, $17 | ||
1125 | umulh $6, $21, $10 | ||
1126 | addq $19, $17, $19 | ||
1127 | cmpult $19, $17, $18 | ||
1128 | addq $18, $10, $10 | ||
1129 | addq $9, $10, $9 | ||
1130 | cmpult $9, $10, $4 | ||
1131 | addq $20, $4, $20 | ||
1132 | mulq $8, $27, $0 | ||
1133 | umulh $8, $27, $3 | ||
1134 | addq $19, $0, $19 | ||
1135 | cmpult $19, $0, $2 | ||
1136 | addq $2, $3, $3 | ||
1137 | addq $9, $3, $9 | ||
1138 | cmpult $9, $3, $1 | ||
1139 | addq $20, $1, $20 | ||
1140 | mulq $23, $24, $5 | ||
1141 | umulh $23, $24, $17 | ||
1142 | addq $19, $5, $19 | ||
1143 | cmpult $19, $5, $18 | ||
1144 | addq $18, $17, $17 | ||
1145 | addq $9, $17, $9 | ||
1146 | cmpult $9, $17, $10 | ||
1147 | addq $20, $10, $20 | ||
1148 | mulq $25, $22, $4 | ||
1149 | umulh $25, $22, $6 | ||
1150 | addq $19, $4, $19 | ||
1151 | cmpult $19, $4, $0 | ||
1152 | addq $0, $6, $6 | ||
1153 | addq $9, $6, $9 | ||
1154 | cmpult $9, $6, $2 | ||
1155 | addq $20, $2, $20 | ||
1156 | mulq $28, $7, $3 | ||
1157 | umulh $28, $7, $1 | ||
1158 | addq $19, $3, $19 | ||
1159 | cmpult $19, $3, $5 | ||
1160 | addq $5, $1, $1 | ||
1161 | addq $9, $1, $9 | ||
1162 | cmpult $9, $1, $18 | ||
1163 | addq $20, $18, $20 | ||
1164 | stq $19, 80($16) | ||
1165 | bis $31, $31, $19 | ||
1166 | mulq $8, $21, $17 | ||
1167 | umulh $8, $21, $10 | ||
1168 | addq $9, $17, $9 | ||
1169 | cmpult $9, $17, $4 | ||
1170 | addq $4, $10, $10 | ||
1171 | addq $20, $10, $20 | ||
1172 | cmpult $20, $10, $0 | ||
1173 | addq $19, $0, $19 | ||
1174 | mulq $23, $27, $6 | ||
1175 | umulh $23, $27, $2 | ||
1176 | addq $9, $6, $9 | ||
1177 | cmpult $9, $6, $3 | ||
1178 | addq $3, $2, $2 | ||
1179 | addq $20, $2, $20 | 797 | addq $20, $2, $20 |
1180 | cmpult $20, $2, $5 | 798 | bis $20, $20, $7 |
1181 | addq $19, $5, $19 | 799 | ldq $4, 8($17) |
1182 | mulq $25, $24, $1 | 800 | addq $24, $7, $24 |
1183 | umulh $25, $24, $18 | 801 | srl $1, 32, $8 |
1184 | addq $9, $1, $9 | 802 | cmpult $24, $7, $3 |
1185 | cmpult $9, $1, $7 | 803 | zapnot $4, 15, $7 |
1186 | addq $7, $18, $18 | 804 | mulq $8, $7, $25 |
1187 | addq $20, $18, $20 | 805 | zapnot $1, 15, $5 |
1188 | cmpult $20, $18, $17 | 806 | mulq $7, $5, $0 |
1189 | addq $19, $17, $19 | 807 | srl $22, 32, $1 |
1190 | mulq $28, $22, $4 | 808 | cmpult $20, $2, $2 |
1191 | umulh $28, $22, $10 | 809 | addq $6, $1, $6 |
1192 | addq $9, $4, $9 | 810 | addq $2, $6, $6 |
1193 | cmpult $9, $4, $0 | 811 | addq $3, $6, $6 |
1194 | addq $0, $10, $10 | 812 | addq $23, $6, $23 |
1195 | addq $20, $10, $20 | 813 | cmpult $23, $6, $22 |
1196 | cmpult $20, $10, $8 | 814 | srl $4, 32, $6 |
1197 | addq $19, $8, $19 | 815 | mulq $5, $6, $5 |
1198 | stq $9, 88($16) | 816 | bis $31, 1, $21 |
1199 | bis $31, $31, $9 | 817 | addq $25, $5, $25 |
1200 | mulq $23, $21, $6 | 818 | cmpult $25, $5, $1 |
1201 | umulh $23, $21, $3 | 819 | mulq $6, $8, $6 |
1202 | addq $20, $6, $20 | 820 | beq $1, $189 |
1203 | cmpult $20, $6, $2 | 821 | sll $21, 32, $1 |
1204 | addq $2, $3, $3 | 822 | addq $6, $1, $6 |
1205 | addq $19, $3, $19 | 823 | $189: |
1206 | cmpult $19, $3, $5 | 824 | sll $25, 32, $5 |
1207 | addq $9, $5, $9 | 825 | ldq $2, 16($18) |
1208 | mulq $25, $27, $1 | 826 | addq $0, $5, $0 |
1209 | umulh $25, $27, $7 | 827 | bis $0, $0, $7 |
1210 | addq $20, $1, $20 | 828 | ldq $4, 0($17) |
1211 | cmpult $20, $1, $18 | 829 | addq $24, $7, $24 |
1212 | addq $18, $7, $7 | 830 | srl $2, 32, $8 |
1213 | addq $19, $7, $19 | 831 | cmpult $24, $7, $3 |
1214 | cmpult $19, $7, $17 | 832 | zapnot $4, 15, $7 |
1215 | addq $9, $17, $9 | 833 | mulq $8, $7, $28 |
1216 | mulq $28, $24, $4 | 834 | srl $25, 32, $1 |
1217 | umulh $28, $24, $0 | 835 | addq $6, $1, $6 |
1218 | addq $20, $4, $20 | 836 | cmpult $0, $5, $1 |
1219 | cmpult $20, $4, $10 | 837 | zapnot $2, 15, $5 |
1220 | addq $10, $0, $0 | 838 | addq $1, $6, $6 |
1221 | addq $19, $0, $19 | 839 | addq $3, $6, $6 |
1222 | cmpult $19, $0, $8 | 840 | addq $23, $6, $23 |
1223 | addq $9, $8, $9 | 841 | cmpult $23, $6, $1 |
1224 | stq $20, 96($16) | 842 | srl $4, 32, $6 |
1225 | bis $31, $31, $20 | 843 | mulq $5, $6, $25 |
1226 | mulq $25, $21, $22 | 844 | mulq $7, $5, $2 |
1227 | umulh $25, $21, $6 | 845 | addq $1, $22, $22 |
1228 | addq $19, $22, $19 | 846 | addq $28, $25, $28 |
1229 | cmpult $19, $22, $2 | 847 | cmpult $28, $25, $1 |
848 | mulq $6, $8, $6 | ||
849 | beq $1, $193 | ||
850 | sll $21, 32, $1 | ||
851 | addq $6, $1, $6 | ||
852 | $193: | ||
853 | sll $28, 32, $25 | ||
854 | addq $2, $25, $2 | ||
855 | bis $2, $2, $7 | ||
856 | addq $24, $7, $24 | ||
857 | stq $24, 16($16) | ||
858 | ldq $4, 0($17) | ||
859 | ldq $5, 24($18) | ||
860 | cmpult $24, $7, $3 | ||
861 | zapnot $4, 15, $7 | ||
862 | srl $5, 32, $8 | ||
863 | mulq $8, $7, $0 | ||
864 | srl $28, 32, $1 | ||
865 | cmpult $2, $25, $2 | ||
866 | addq $6, $1, $6 | ||
867 | addq $2, $6, $6 | ||
868 | addq $3, $6, $6 | ||
869 | addq $23, $6, $23 | ||
870 | cmpult $23, $6, $1 | ||
871 | srl $4, 32, $6 | ||
872 | zapnot $5, 15, $5 | ||
873 | mulq $5, $6, $24 | ||
874 | mulq $7, $5, $2 | ||
875 | addq $1, $22, $22 | ||
876 | addq $0, $24, $0 | ||
877 | cmpult $0, $24, $1 | ||
878 | mulq $6, $8, $6 | ||
879 | beq $1, $197 | ||
880 | sll $21, 32, $1 | ||
881 | addq $6, $1, $6 | ||
882 | $197: | ||
883 | sll $0, 32, $24 | ||
884 | ldq $1, 16($18) | ||
885 | addq $2, $24, $2 | ||
886 | bis $2, $2, $7 | ||
887 | ldq $4, 8($17) | ||
888 | addq $23, $7, $23 | ||
889 | srl $1, 32, $8 | ||
890 | cmpult $23, $7, $3 | ||
891 | zapnot $4, 15, $7 | ||
892 | mulq $8, $7, $25 | ||
893 | zapnot $1, 15, $5 | ||
894 | mulq $7, $5, $21 | ||
895 | srl $0, 32, $1 | ||
896 | cmpult $2, $24, $2 | ||
897 | addq $6, $1, $6 | ||
898 | addq $2, $6, $6 | ||
899 | addq $3, $6, $6 | ||
900 | addq $22, $6, $22 | ||
901 | cmpult $22, $6, $24 | ||
902 | srl $4, 32, $6 | ||
903 | mulq $5, $6, $5 | ||
904 | bis $31, 1, $20 | ||
905 | addq $25, $5, $25 | ||
906 | cmpult $25, $5, $1 | ||
907 | mulq $6, $8, $6 | ||
908 | beq $1, $201 | ||
909 | sll $20, 32, $1 | ||
910 | addq $6, $1, $6 | ||
911 | $201: | ||
912 | sll $25, 32, $5 | ||
913 | ldq $2, 8($18) | ||
914 | addq $21, $5, $21 | ||
915 | bis $21, $21, $7 | ||
916 | ldq $4, 16($17) | ||
917 | addq $23, $7, $23 | ||
918 | srl $2, 32, $8 | ||
919 | cmpult $23, $7, $3 | ||
920 | zapnot $4, 15, $7 | ||
921 | mulq $8, $7, $28 | ||
922 | srl $25, 32, $1 | ||
923 | addq $6, $1, $6 | ||
924 | cmpult $21, $5, $1 | ||
925 | zapnot $2, 15, $5 | ||
926 | addq $1, $6, $6 | ||
927 | addq $3, $6, $6 | ||
928 | addq $22, $6, $22 | ||
929 | cmpult $22, $6, $1 | ||
930 | srl $4, 32, $6 | ||
931 | mulq $5, $6, $25 | ||
932 | mulq $7, $5, $5 | ||
933 | addq $1, $24, $24 | ||
934 | addq $28, $25, $28 | ||
935 | cmpult $28, $25, $1 | ||
936 | mulq $6, $8, $6 | ||
937 | beq $1, $205 | ||
938 | sll $20, 32, $1 | ||
939 | addq $6, $1, $6 | ||
940 | $205: | ||
941 | sll $28, 32, $25 | ||
942 | ldq $2, 0($18) | ||
943 | addq $5, $25, $5 | ||
944 | bis $5, $5, $7 | ||
945 | ldq $4, 24($17) | ||
946 | addq $23, $7, $23 | ||
947 | srl $2, 32, $8 | ||
948 | cmpult $23, $7, $3 | ||
949 | zapnot $4, 15, $7 | ||
950 | mulq $8, $7, $0 | ||
951 | srl $28, 32, $1 | ||
952 | addq $6, $1, $6 | ||
953 | cmpult $5, $25, $1 | ||
954 | zapnot $2, 15, $5 | ||
955 | addq $1, $6, $6 | ||
956 | addq $3, $6, $6 | ||
957 | addq $22, $6, $22 | ||
958 | cmpult $22, $6, $1 | ||
959 | srl $4, 32, $6 | ||
960 | mulq $5, $6, $25 | ||
961 | mulq $7, $5, $2 | ||
962 | addq $1, $24, $24 | ||
963 | addq $0, $25, $0 | ||
964 | cmpult $0, $25, $1 | ||
965 | mulq $6, $8, $6 | ||
966 | beq $1, $209 | ||
967 | sll $20, 32, $1 | ||
968 | addq $6, $1, $6 | ||
969 | $209: | ||
970 | sll $0, 32, $25 | ||
971 | addq $2, $25, $2 | ||
972 | bis $2, $2, $7 | ||
973 | addq $23, $7, $23 | ||
974 | stq $23, 24($16) | ||
975 | ldq $4, 32($17) | ||
976 | ldq $5, 0($18) | ||
977 | cmpult $23, $7, $3 | ||
978 | zapnot $4, 15, $7 | ||
979 | srl $5, 32, $8 | ||
980 | mulq $8, $7, $28 | ||
981 | srl $0, 32, $1 | ||
982 | cmpult $2, $25, $2 | ||
983 | addq $6, $1, $6 | ||
984 | addq $2, $6, $6 | ||
985 | addq $3, $6, $6 | ||
986 | addq $22, $6, $22 | ||
987 | cmpult $22, $6, $1 | ||
988 | srl $4, 32, $6 | ||
989 | zapnot $5, 15, $5 | ||
990 | mulq $5, $6, $23 | ||
991 | mulq $7, $5, $2 | ||
992 | addq $1, $24, $24 | ||
993 | addq $28, $23, $28 | ||
994 | cmpult $28, $23, $1 | ||
995 | mulq $6, $8, $6 | ||
996 | beq $1, $213 | ||
997 | sll $20, 32, $1 | ||
998 | addq $6, $1, $6 | ||
999 | $213: | ||
1000 | sll $28, 32, $23 | ||
1001 | ldq $1, 8($18) | ||
1002 | addq $2, $23, $2 | ||
1003 | bis $2, $2, $7 | ||
1004 | ldq $4, 24($17) | ||
1005 | addq $22, $7, $22 | ||
1006 | srl $1, 32, $8 | ||
1007 | cmpult $22, $7, $3 | ||
1008 | zapnot $4, 15, $7 | ||
1009 | mulq $8, $7, $25 | ||
1010 | zapnot $1, 15, $5 | ||
1011 | mulq $7, $5, $0 | ||
1012 | srl $28, 32, $1 | ||
1013 | cmpult $2, $23, $2 | ||
1014 | addq $6, $1, $6 | ||
1230 | addq $2, $6, $6 | 1015 | addq $2, $6, $6 |
1231 | addq $9, $6, $9 | 1016 | addq $3, $6, $6 |
1232 | cmpult $9, $6, $3 | 1017 | addq $24, $6, $24 |
1233 | addq $20, $3, $20 | 1018 | cmpult $24, $6, $23 |
1234 | mulq $28, $27, $5 | 1019 | srl $4, 32, $6 |
1235 | umulh $28, $27, $23 | 1020 | mulq $5, $6, $5 |
1236 | addq $19, $5, $19 | 1021 | bis $31, 1, $21 |
1237 | cmpult $19, $5, $1 | 1022 | addq $25, $5, $25 |
1023 | cmpult $25, $5, $1 | ||
1024 | mulq $6, $8, $6 | ||
1025 | beq $1, $217 | ||
1026 | sll $21, 32, $1 | ||
1027 | addq $6, $1, $6 | ||
1028 | $217: | ||
1029 | sll $25, 32, $5 | ||
1030 | ldq $2, 16($18) | ||
1031 | addq $0, $5, $0 | ||
1032 | bis $0, $0, $7 | ||
1033 | ldq $4, 16($17) | ||
1034 | addq $22, $7, $22 | ||
1035 | srl $2, 32, $8 | ||
1036 | cmpult $22, $7, $3 | ||
1037 | zapnot $4, 15, $7 | ||
1038 | mulq $8, $7, $28 | ||
1039 | srl $25, 32, $1 | ||
1040 | addq $6, $1, $6 | ||
1041 | cmpult $0, $5, $1 | ||
1042 | zapnot $2, 15, $5 | ||
1043 | addq $1, $6, $6 | ||
1044 | addq $3, $6, $6 | ||
1045 | addq $24, $6, $24 | ||
1046 | cmpult $24, $6, $1 | ||
1047 | srl $4, 32, $6 | ||
1048 | mulq $5, $6, $25 | ||
1049 | mulq $7, $5, $5 | ||
1238 | addq $1, $23, $23 | 1050 | addq $1, $23, $23 |
1239 | addq $9, $23, $9 | 1051 | addq $28, $25, $28 |
1240 | cmpult $9, $23, $18 | 1052 | cmpult $28, $25, $1 |
1241 | addq $20, $18, $20 | 1053 | mulq $6, $8, $6 |
1242 | stq $19, 104($16) | 1054 | beq $1, $221 |
1243 | bis $31, $31, $19 | 1055 | sll $21, 32, $1 |
1244 | mulq $28, $21, $7 | 1056 | addq $6, $1, $6 |
1245 | umulh $28, $21, $17 | 1057 | $221: |
1246 | addq $9, $7, $9 | 1058 | sll $28, 32, $25 |
1247 | cmpult $9, $7, $4 | 1059 | ldq $2, 24($18) |
1248 | addq $4, $17, $17 | 1060 | addq $5, $25, $5 |
1249 | addq $20, $17, $20 | 1061 | bis $5, $5, $7 |
1250 | cmpult $20, $17, $10 | 1062 | ldq $4, 8($17) |
1251 | addq $19, $10, $19 | 1063 | addq $22, $7, $22 |
1252 | stq $9, 112($16) | 1064 | srl $2, 32, $8 |
1253 | stq $20, 120($16) | 1065 | cmpult $22, $7, $3 |
1254 | ldq $9, 0($30) | 1066 | zapnot $4, 15, $7 |
1255 | ldq $10, 8($30) | 1067 | mulq $8, $7, $0 |
1256 | addq $30, 16, $30 | 1068 | srl $28, 32, $1 |
1257 | ret $31,($26),1 | 1069 | addq $6, $1, $6 |
1070 | cmpult $5, $25, $1 | ||
1071 | zapnot $2, 15, $5 | ||
1072 | addq $1, $6, $6 | ||
1073 | addq $3, $6, $6 | ||
1074 | addq $24, $6, $24 | ||
1075 | cmpult $24, $6, $1 | ||
1076 | srl $4, 32, $6 | ||
1077 | mulq $5, $6, $25 | ||
1078 | mulq $7, $5, $5 | ||
1079 | addq $1, $23, $23 | ||
1080 | addq $0, $25, $0 | ||
1081 | cmpult $0, $25, $1 | ||
1082 | mulq $6, $8, $6 | ||
1083 | beq $1, $225 | ||
1084 | sll $21, 32, $1 | ||
1085 | addq $6, $1, $6 | ||
1086 | $225: | ||
1087 | sll $0, 32, $25 | ||
1088 | ldq $2, 32($18) | ||
1089 | addq $5, $25, $5 | ||
1090 | bis $5, $5, $7 | ||
1091 | ldq $4, 0($17) | ||
1092 | addq $22, $7, $22 | ||
1093 | srl $2, 32, $8 | ||
1094 | cmpult $22, $7, $3 | ||
1095 | zapnot $4, 15, $7 | ||
1096 | mulq $8, $7, $28 | ||
1097 | srl $0, 32, $1 | ||
1098 | addq $6, $1, $6 | ||
1099 | cmpult $5, $25, $1 | ||
1100 | zapnot $2, 15, $5 | ||
1101 | addq $1, $6, $6 | ||
1102 | addq $3, $6, $6 | ||
1103 | addq $24, $6, $24 | ||
1104 | cmpult $24, $6, $1 | ||
1105 | srl $4, 32, $6 | ||
1106 | mulq $5, $6, $25 | ||
1107 | mulq $7, $5, $2 | ||
1108 | addq $1, $23, $23 | ||
1109 | addq $28, $25, $28 | ||
1110 | cmpult $28, $25, $1 | ||
1111 | mulq $6, $8, $6 | ||
1112 | beq $1, $229 | ||
1113 | sll $21, 32, $1 | ||
1114 | addq $6, $1, $6 | ||
1115 | $229: | ||
1116 | sll $28, 32, $25 | ||
1117 | addq $2, $25, $2 | ||
1118 | bis $2, $2, $7 | ||
1119 | addq $22, $7, $22 | ||
1120 | stq $22, 32($16) | ||
1121 | ldq $4, 0($17) | ||
1122 | ldq $5, 40($18) | ||
1123 | cmpult $22, $7, $3 | ||
1124 | zapnot $4, 15, $7 | ||
1125 | srl $5, 32, $8 | ||
1126 | mulq $8, $7, $0 | ||
1127 | srl $28, 32, $1 | ||
1128 | cmpult $2, $25, $2 | ||
1129 | addq $6, $1, $6 | ||
1130 | addq $2, $6, $6 | ||
1131 | addq $3, $6, $6 | ||
1132 | addq $24, $6, $24 | ||
1133 | cmpult $24, $6, $1 | ||
1134 | srl $4, 32, $6 | ||
1135 | zapnot $5, 15, $5 | ||
1136 | mulq $5, $6, $22 | ||
1137 | mulq $7, $5, $2 | ||
1138 | addq $1, $23, $23 | ||
1139 | addq $0, $22, $0 | ||
1140 | cmpult $0, $22, $1 | ||
1141 | mulq $6, $8, $6 | ||
1142 | beq $1, $233 | ||
1143 | sll $21, 32, $1 | ||
1144 | addq $6, $1, $6 | ||
1145 | $233: | ||
1146 | sll $0, 32, $22 | ||
1147 | ldq $1, 32($18) | ||
1148 | addq $2, $22, $2 | ||
1149 | bis $2, $2, $7 | ||
1150 | ldq $4, 8($17) | ||
1151 | addq $24, $7, $24 | ||
1152 | srl $1, 32, $8 | ||
1153 | cmpult $24, $7, $3 | ||
1154 | zapnot $4, 15, $7 | ||
1155 | mulq $8, $7, $25 | ||
1156 | zapnot $1, 15, $5 | ||
1157 | mulq $7, $5, $21 | ||
1158 | srl $0, 32, $1 | ||
1159 | cmpult $2, $22, $2 | ||
1160 | addq $6, $1, $6 | ||
1161 | addq $2, $6, $6 | ||
1162 | addq $3, $6, $6 | ||
1163 | addq $23, $6, $23 | ||
1164 | cmpult $23, $6, $22 | ||
1165 | srl $4, 32, $6 | ||
1166 | mulq $5, $6, $5 | ||
1167 | bis $31, 1, $20 | ||
1168 | addq $25, $5, $25 | ||
1169 | cmpult $25, $5, $1 | ||
1170 | mulq $6, $8, $6 | ||
1171 | beq $1, $237 | ||
1172 | sll $20, 32, $1 | ||
1173 | addq $6, $1, $6 | ||
1174 | $237: | ||
1175 | sll $25, 32, $5 | ||
1176 | ldq $2, 24($18) | ||
1177 | addq $21, $5, $21 | ||
1178 | bis $21, $21, $7 | ||
1179 | ldq $4, 16($17) | ||
1180 | addq $24, $7, $24 | ||
1181 | srl $2, 32, $8 | ||
1182 | cmpult $24, $7, $3 | ||
1183 | zapnot $4, 15, $7 | ||
1184 | mulq $8, $7, $28 | ||
1185 | srl $25, 32, $1 | ||
1186 | addq $6, $1, $6 | ||
1187 | cmpult $21, $5, $1 | ||
1188 | zapnot $2, 15, $5 | ||
1189 | addq $1, $6, $6 | ||
1190 | addq $3, $6, $6 | ||
1191 | addq $23, $6, $23 | ||
1192 | cmpult $23, $6, $1 | ||
1193 | srl $4, 32, $6 | ||
1194 | mulq $5, $6, $25 | ||
1195 | mulq $7, $5, $5 | ||
1196 | addq $1, $22, $22 | ||
1197 | addq $28, $25, $28 | ||
1198 | cmpult $28, $25, $1 | ||
1199 | mulq $6, $8, $6 | ||
1200 | beq $1, $241 | ||
1201 | sll $20, 32, $1 | ||
1202 | addq $6, $1, $6 | ||
1203 | $241: | ||
1204 | sll $28, 32, $25 | ||
1205 | ldq $2, 16($18) | ||
1206 | addq $5, $25, $5 | ||
1207 | bis $5, $5, $7 | ||
1208 | ldq $4, 24($17) | ||
1209 | addq $24, $7, $24 | ||
1210 | srl $2, 32, $8 | ||
1211 | cmpult $24, $7, $3 | ||
1212 | zapnot $4, 15, $7 | ||
1213 | mulq $8, $7, $0 | ||
1214 | srl $28, 32, $1 | ||
1215 | addq $6, $1, $6 | ||
1216 | cmpult $5, $25, $1 | ||
1217 | zapnot $2, 15, $5 | ||
1218 | addq $1, $6, $6 | ||
1219 | addq $3, $6, $6 | ||
1220 | addq $23, $6, $23 | ||
1221 | cmpult $23, $6, $1 | ||
1222 | srl $4, 32, $6 | ||
1223 | mulq $5, $6, $25 | ||
1224 | mulq $7, $5, $5 | ||
1225 | addq $1, $22, $22 | ||
1226 | addq $0, $25, $0 | ||
1227 | cmpult $0, $25, $1 | ||
1228 | mulq $6, $8, $6 | ||
1229 | beq $1, $245 | ||
1230 | sll $20, 32, $1 | ||
1231 | addq $6, $1, $6 | ||
1232 | $245: | ||
1233 | sll $0, 32, $25 | ||
1234 | ldq $2, 8($18) | ||
1235 | addq $5, $25, $5 | ||
1236 | bis $5, $5, $7 | ||
1237 | ldq $4, 32($17) | ||
1238 | addq $24, $7, $24 | ||
1239 | srl $2, 32, $8 | ||
1240 | cmpult $24, $7, $3 | ||
1241 | zapnot $4, 15, $7 | ||
1242 | mulq $8, $7, $28 | ||
1243 | srl $0, 32, $1 | ||
1244 | addq $6, $1, $6 | ||
1245 | cmpult $5, $25, $1 | ||
1246 | zapnot $2, 15, $5 | ||
1247 | addq $1, $6, $6 | ||
1248 | addq $3, $6, $6 | ||
1249 | addq $23, $6, $23 | ||
1250 | cmpult $23, $6, $1 | ||
1251 | srl $4, 32, $6 | ||
1252 | mulq $5, $6, $25 | ||
1253 | mulq $7, $5, $5 | ||
1254 | addq $1, $22, $22 | ||
1255 | addq $28, $25, $28 | ||
1256 | cmpult $28, $25, $1 | ||
1257 | mulq $6, $8, $6 | ||
1258 | beq $1, $249 | ||
1259 | sll $20, 32, $1 | ||
1260 | addq $6, $1, $6 | ||
1261 | $249: | ||
1262 | sll $28, 32, $25 | ||
1263 | ldq $2, 0($18) | ||
1264 | addq $5, $25, $5 | ||
1265 | bis $5, $5, $7 | ||
1266 | ldq $4, 40($17) | ||
1267 | addq $24, $7, $24 | ||
1268 | srl $2, 32, $8 | ||
1269 | cmpult $24, $7, $3 | ||
1270 | zapnot $4, 15, $7 | ||
1271 | mulq $8, $7, $0 | ||
1272 | srl $28, 32, $1 | ||
1273 | addq $6, $1, $6 | ||
1274 | cmpult $5, $25, $1 | ||
1275 | zapnot $2, 15, $5 | ||
1276 | addq $1, $6, $6 | ||
1277 | addq $3, $6, $6 | ||
1278 | addq $23, $6, $23 | ||
1279 | cmpult $23, $6, $1 | ||
1280 | srl $4, 32, $6 | ||
1281 | mulq $5, $6, $25 | ||
1282 | mulq $7, $5, $2 | ||
1283 | addq $1, $22, $22 | ||
1284 | addq $0, $25, $0 | ||
1285 | cmpult $0, $25, $1 | ||
1286 | mulq $6, $8, $6 | ||
1287 | beq $1, $253 | ||
1288 | sll $20, 32, $1 | ||
1289 | addq $6, $1, $6 | ||
1290 | $253: | ||
1291 | sll $0, 32, $25 | ||
1292 | addq $2, $25, $2 | ||
1293 | bis $2, $2, $7 | ||
1294 | addq $24, $7, $24 | ||
1295 | stq $24, 40($16) | ||
1296 | ldq $4, 48($17) | ||
1297 | ldq $5, 0($18) | ||
1298 | cmpult $24, $7, $3 | ||
1299 | zapnot $4, 15, $7 | ||
1300 | srl $5, 32, $8 | ||
1301 | mulq $8, $7, $28 | ||
1302 | srl $0, 32, $1 | ||
1303 | cmpult $2, $25, $2 | ||
1304 | addq $6, $1, $6 | ||
1305 | addq $2, $6, $6 | ||
1306 | addq $3, $6, $6 | ||
1307 | addq $23, $6, $23 | ||
1308 | cmpult $23, $6, $1 | ||
1309 | srl $4, 32, $6 | ||
1310 | zapnot $5, 15, $5 | ||
1311 | mulq $5, $6, $24 | ||
1312 | mulq $7, $5, $2 | ||
1313 | addq $1, $22, $22 | ||
1314 | addq $28, $24, $28 | ||
1315 | cmpult $28, $24, $1 | ||
1316 | mulq $6, $8, $6 | ||
1317 | beq $1, $257 | ||
1318 | sll $20, 32, $1 | ||
1319 | addq $6, $1, $6 | ||
1320 | $257: | ||
1321 | sll $28, 32, $24 | ||
1322 | ldq $1, 8($18) | ||
1323 | addq $2, $24, $2 | ||
1324 | bis $2, $2, $7 | ||
1325 | ldq $4, 40($17) | ||
1326 | addq $23, $7, $23 | ||
1327 | srl $1, 32, $8 | ||
1328 | cmpult $23, $7, $3 | ||
1329 | zapnot $4, 15, $7 | ||
1330 | mulq $8, $7, $25 | ||
1331 | zapnot $1, 15, $5 | ||
1332 | mulq $7, $5, $0 | ||
1333 | srl $28, 32, $1 | ||
1334 | cmpult $2, $24, $2 | ||
1335 | addq $6, $1, $6 | ||
1336 | addq $2, $6, $6 | ||
1337 | addq $3, $6, $6 | ||
1338 | addq $22, $6, $22 | ||
1339 | cmpult $22, $6, $24 | ||
1340 | srl $4, 32, $6 | ||
1341 | mulq $5, $6, $5 | ||
1342 | bis $31, 1, $21 | ||
1343 | addq $25, $5, $25 | ||
1344 | cmpult $25, $5, $1 | ||
1345 | mulq $6, $8, $6 | ||
1346 | beq $1, $261 | ||
1347 | sll $21, 32, $1 | ||
1348 | addq $6, $1, $6 | ||
1349 | $261: | ||
1350 | sll $25, 32, $5 | ||
1351 | ldq $2, 16($18) | ||
1352 | addq $0, $5, $0 | ||
1353 | bis $0, $0, $7 | ||
1354 | ldq $4, 32($17) | ||
1355 | addq $23, $7, $23 | ||
1356 | srl $2, 32, $8 | ||
1357 | cmpult $23, $7, $3 | ||
1358 | zapnot $4, 15, $7 | ||
1359 | mulq $8, $7, $28 | ||
1360 | srl $25, 32, $1 | ||
1361 | addq $6, $1, $6 | ||
1362 | cmpult $0, $5, $1 | ||
1363 | zapnot $2, 15, $5 | ||
1364 | addq $1, $6, $6 | ||
1365 | addq $3, $6, $6 | ||
1366 | addq $22, $6, $22 | ||
1367 | cmpult $22, $6, $1 | ||
1368 | srl $4, 32, $6 | ||
1369 | mulq $5, $6, $25 | ||
1370 | mulq $7, $5, $5 | ||
1371 | addq $1, $24, $24 | ||
1372 | addq $28, $25, $28 | ||
1373 | cmpult $28, $25, $1 | ||
1374 | mulq $6, $8, $6 | ||
1375 | beq $1, $265 | ||
1376 | sll $21, 32, $1 | ||
1377 | addq $6, $1, $6 | ||
1378 | $265: | ||
1379 | sll $28, 32, $25 | ||
1380 | ldq $2, 24($18) | ||
1381 | addq $5, $25, $5 | ||
1382 | bis $5, $5, $7 | ||
1383 | ldq $4, 24($17) | ||
1384 | addq $23, $7, $23 | ||
1385 | srl $2, 32, $8 | ||
1386 | cmpult $23, $7, $3 | ||
1387 | zapnot $4, 15, $7 | ||
1388 | mulq $8, $7, $0 | ||
1389 | srl $28, 32, $1 | ||
1390 | addq $6, $1, $6 | ||
1391 | cmpult $5, $25, $1 | ||
1392 | zapnot $2, 15, $5 | ||
1393 | addq $1, $6, $6 | ||
1394 | addq $3, $6, $6 | ||
1395 | addq $22, $6, $22 | ||
1396 | cmpult $22, $6, $1 | ||
1397 | srl $4, 32, $6 | ||
1398 | mulq $5, $6, $25 | ||
1399 | mulq $7, $5, $5 | ||
1400 | addq $1, $24, $24 | ||
1401 | addq $0, $25, $0 | ||
1402 | cmpult $0, $25, $1 | ||
1403 | mulq $6, $8, $6 | ||
1404 | beq $1, $269 | ||
1405 | sll $21, 32, $1 | ||
1406 | addq $6, $1, $6 | ||
1407 | $269: | ||
1408 | sll $0, 32, $25 | ||
1409 | ldq $2, 32($18) | ||
1410 | addq $5, $25, $5 | ||
1411 | bis $5, $5, $7 | ||
1412 | ldq $4, 16($17) | ||
1413 | addq $23, $7, $23 | ||
1414 | srl $2, 32, $8 | ||
1415 | cmpult $23, $7, $3 | ||
1416 | zapnot $4, 15, $7 | ||
1417 | mulq $8, $7, $28 | ||
1418 | srl $0, 32, $1 | ||
1419 | addq $6, $1, $6 | ||
1420 | cmpult $5, $25, $1 | ||
1421 | zapnot $2, 15, $5 | ||
1422 | addq $1, $6, $6 | ||
1423 | addq $3, $6, $6 | ||
1424 | addq $22, $6, $22 | ||
1425 | cmpult $22, $6, $1 | ||
1426 | srl $4, 32, $6 | ||
1427 | mulq $5, $6, $25 | ||
1428 | mulq $7, $5, $5 | ||
1429 | addq $1, $24, $24 | ||
1430 | addq $28, $25, $28 | ||
1431 | cmpult $28, $25, $1 | ||
1432 | mulq $6, $8, $6 | ||
1433 | beq $1, $273 | ||
1434 | sll $21, 32, $1 | ||
1435 | addq $6, $1, $6 | ||
1436 | $273: | ||
1437 | sll $28, 32, $25 | ||
1438 | ldq $2, 40($18) | ||
1439 | addq $5, $25, $5 | ||
1440 | bis $5, $5, $7 | ||
1441 | ldq $4, 8($17) | ||
1442 | addq $23, $7, $23 | ||
1443 | srl $2, 32, $8 | ||
1444 | cmpult $23, $7, $3 | ||
1445 | zapnot $4, 15, $7 | ||
1446 | mulq $8, $7, $0 | ||
1447 | srl $28, 32, $1 | ||
1448 | addq $6, $1, $6 | ||
1449 | cmpult $5, $25, $1 | ||
1450 | zapnot $2, 15, $5 | ||
1451 | addq $1, $6, $6 | ||
1452 | addq $3, $6, $6 | ||
1453 | addq $22, $6, $22 | ||
1454 | cmpult $22, $6, $1 | ||
1455 | srl $4, 32, $6 | ||
1456 | mulq $5, $6, $25 | ||
1457 | mulq $7, $5, $5 | ||
1458 | addq $1, $24, $24 | ||
1459 | addq $0, $25, $0 | ||
1460 | cmpult $0, $25, $1 | ||
1461 | mulq $6, $8, $6 | ||
1462 | beq $1, $277 | ||
1463 | sll $21, 32, $1 | ||
1464 | addq $6, $1, $6 | ||
1465 | $277: | ||
1466 | sll $0, 32, $25 | ||
1467 | ldq $2, 48($18) | ||
1468 | addq $5, $25, $5 | ||
1469 | bis $5, $5, $7 | ||
1470 | ldq $4, 0($17) | ||
1471 | addq $23, $7, $23 | ||
1472 | srl $2, 32, $8 | ||
1473 | cmpult $23, $7, $3 | ||
1474 | zapnot $4, 15, $7 | ||
1475 | mulq $8, $7, $28 | ||
1476 | srl $0, 32, $1 | ||
1477 | addq $6, $1, $6 | ||
1478 | cmpult $5, $25, $1 | ||
1479 | zapnot $2, 15, $5 | ||
1480 | addq $1, $6, $6 | ||
1481 | addq $3, $6, $6 | ||
1482 | addq $22, $6, $22 | ||
1483 | cmpult $22, $6, $1 | ||
1484 | srl $4, 32, $6 | ||
1485 | mulq $5, $6, $25 | ||
1486 | mulq $7, $5, $2 | ||
1487 | addq $1, $24, $24 | ||
1488 | addq $28, $25, $28 | ||
1489 | cmpult $28, $25, $1 | ||
1490 | mulq $6, $8, $6 | ||
1491 | beq $1, $281 | ||
1492 | sll $21, 32, $1 | ||
1493 | addq $6, $1, $6 | ||
1494 | $281: | ||
1495 | sll $28, 32, $25 | ||
1496 | addq $2, $25, $2 | ||
1497 | bis $2, $2, $7 | ||
1498 | addq $23, $7, $23 | ||
1499 | stq $23, 48($16) | ||
1500 | ldq $4, 0($17) | ||
1501 | ldq $5, 56($18) | ||
1502 | cmpult $23, $7, $3 | ||
1503 | zapnot $4, 15, $7 | ||
1504 | srl $5, 32, $8 | ||
1505 | mulq $8, $7, $0 | ||
1506 | srl $28, 32, $1 | ||
1507 | cmpult $2, $25, $2 | ||
1508 | addq $6, $1, $6 | ||
1509 | addq $2, $6, $6 | ||
1510 | addq $3, $6, $6 | ||
1511 | addq $22, $6, $22 | ||
1512 | cmpult $22, $6, $1 | ||
1513 | srl $4, 32, $6 | ||
1514 | zapnot $5, 15, $5 | ||
1515 | mulq $5, $6, $23 | ||
1516 | mulq $7, $5, $2 | ||
1517 | addq $1, $24, $24 | ||
1518 | addq $0, $23, $0 | ||
1519 | cmpult $0, $23, $1 | ||
1520 | mulq $6, $8, $6 | ||
1521 | beq $1, $285 | ||
1522 | sll $21, 32, $1 | ||
1523 | addq $6, $1, $6 | ||
1524 | $285: | ||
1525 | sll $0, 32, $23 | ||
1526 | ldq $1, 48($18) | ||
1527 | addq $2, $23, $2 | ||
1528 | bis $2, $2, $7 | ||
1529 | ldq $4, 8($17) | ||
1530 | addq $22, $7, $22 | ||
1531 | srl $1, 32, $8 | ||
1532 | cmpult $22, $7, $3 | ||
1533 | zapnot $4, 15, $7 | ||
1534 | mulq $8, $7, $25 | ||
1535 | zapnot $1, 15, $5 | ||
1536 | mulq $7, $5, $21 | ||
1537 | srl $0, 32, $1 | ||
1538 | cmpult $2, $23, $2 | ||
1539 | addq $6, $1, $6 | ||
1540 | addq $2, $6, $6 | ||
1541 | addq $3, $6, $6 | ||
1542 | addq $24, $6, $24 | ||
1543 | cmpult $24, $6, $23 | ||
1544 | srl $4, 32, $6 | ||
1545 | mulq $5, $6, $5 | ||
1546 | bis $31, 1, $20 | ||
1547 | addq $25, $5, $25 | ||
1548 | cmpult $25, $5, $1 | ||
1549 | mulq $6, $8, $6 | ||
1550 | beq $1, $289 | ||
1551 | sll $20, 32, $1 | ||
1552 | addq $6, $1, $6 | ||
1553 | $289: | ||
1554 | sll $25, 32, $5 | ||
1555 | ldq $2, 40($18) | ||
1556 | addq $21, $5, $21 | ||
1557 | bis $21, $21, $7 | ||
1558 | ldq $4, 16($17) | ||
1559 | addq $22, $7, $22 | ||
1560 | srl $2, 32, $8 | ||
1561 | cmpult $22, $7, $3 | ||
1562 | zapnot $4, 15, $7 | ||
1563 | mulq $8, $7, $28 | ||
1564 | srl $25, 32, $1 | ||
1565 | addq $6, $1, $6 | ||
1566 | cmpult $21, $5, $1 | ||
1567 | zapnot $2, 15, $5 | ||
1568 | addq $1, $6, $6 | ||
1569 | addq $3, $6, $6 | ||
1570 | addq $24, $6, $24 | ||
1571 | cmpult $24, $6, $1 | ||
1572 | srl $4, 32, $6 | ||
1573 | mulq $5, $6, $25 | ||
1574 | mulq $7, $5, $5 | ||
1575 | addq $1, $23, $23 | ||
1576 | addq $28, $25, $28 | ||
1577 | cmpult $28, $25, $1 | ||
1578 | mulq $6, $8, $6 | ||
1579 | beq $1, $293 | ||
1580 | sll $20, 32, $1 | ||
1581 | addq $6, $1, $6 | ||
1582 | $293: | ||
1583 | sll $28, 32, $25 | ||
1584 | ldq $2, 32($18) | ||
1585 | addq $5, $25, $5 | ||
1586 | bis $5, $5, $7 | ||
1587 | ldq $4, 24($17) | ||
1588 | addq $22, $7, $22 | ||
1589 | srl $2, 32, $8 | ||
1590 | cmpult $22, $7, $3 | ||
1591 | zapnot $4, 15, $7 | ||
1592 | mulq $8, $7, $0 | ||
1593 | srl $28, 32, $1 | ||
1594 | addq $6, $1, $6 | ||
1595 | cmpult $5, $25, $1 | ||
1596 | zapnot $2, 15, $5 | ||
1597 | addq $1, $6, $6 | ||
1598 | addq $3, $6, $6 | ||
1599 | addq $24, $6, $24 | ||
1600 | cmpult $24, $6, $1 | ||
1601 | srl $4, 32, $6 | ||
1602 | mulq $5, $6, $25 | ||
1603 | mulq $7, $5, $5 | ||
1604 | addq $1, $23, $23 | ||
1605 | addq $0, $25, $0 | ||
1606 | cmpult $0, $25, $1 | ||
1607 | mulq $6, $8, $6 | ||
1608 | beq $1, $297 | ||
1609 | sll $20, 32, $1 | ||
1610 | addq $6, $1, $6 | ||
1611 | $297: | ||
1612 | sll $0, 32, $25 | ||
1613 | ldq $2, 24($18) | ||
1614 | addq $5, $25, $5 | ||
1615 | bis $5, $5, $7 | ||
1616 | ldq $4, 32($17) | ||
1617 | addq $22, $7, $22 | ||
1618 | srl $2, 32, $8 | ||
1619 | cmpult $22, $7, $3 | ||
1620 | zapnot $4, 15, $7 | ||
1621 | mulq $8, $7, $28 | ||
1622 | srl $0, 32, $1 | ||
1623 | addq $6, $1, $6 | ||
1624 | cmpult $5, $25, $1 | ||
1625 | zapnot $2, 15, $5 | ||
1626 | addq $1, $6, $6 | ||
1627 | addq $3, $6, $6 | ||
1628 | addq $24, $6, $24 | ||
1629 | cmpult $24, $6, $1 | ||
1630 | srl $4, 32, $6 | ||
1631 | mulq $5, $6, $25 | ||
1632 | mulq $7, $5, $5 | ||
1633 | addq $1, $23, $23 | ||
1634 | addq $28, $25, $28 | ||
1635 | cmpult $28, $25, $1 | ||
1636 | mulq $6, $8, $6 | ||
1637 | beq $1, $301 | ||
1638 | sll $20, 32, $1 | ||
1639 | addq $6, $1, $6 | ||
1640 | $301: | ||
1641 | sll $28, 32, $25 | ||
1642 | ldq $2, 16($18) | ||
1643 | addq $5, $25, $5 | ||
1644 | bis $5, $5, $7 | ||
1645 | ldq $4, 40($17) | ||
1646 | addq $22, $7, $22 | ||
1647 | srl $2, 32, $8 | ||
1648 | cmpult $22, $7, $3 | ||
1649 | zapnot $4, 15, $7 | ||
1650 | mulq $8, $7, $0 | ||
1651 | srl $28, 32, $1 | ||
1652 | addq $6, $1, $6 | ||
1653 | cmpult $5, $25, $1 | ||
1654 | zapnot $2, 15, $5 | ||
1655 | addq $1, $6, $6 | ||
1656 | addq $3, $6, $6 | ||
1657 | addq $24, $6, $24 | ||
1658 | cmpult $24, $6, $1 | ||
1659 | srl $4, 32, $6 | ||
1660 | mulq $5, $6, $25 | ||
1661 | mulq $7, $5, $5 | ||
1662 | addq $1, $23, $23 | ||
1663 | addq $0, $25, $0 | ||
1664 | cmpult $0, $25, $1 | ||
1665 | mulq $6, $8, $6 | ||
1666 | beq $1, $305 | ||
1667 | sll $20, 32, $1 | ||
1668 | addq $6, $1, $6 | ||
1669 | $305: | ||
1670 | sll $0, 32, $25 | ||
1671 | ldq $2, 8($18) | ||
1672 | addq $5, $25, $5 | ||
1673 | bis $5, $5, $7 | ||
1674 | ldq $4, 48($17) | ||
1675 | addq $22, $7, $22 | ||
1676 | srl $2, 32, $8 | ||
1677 | cmpult $22, $7, $3 | ||
1678 | zapnot $4, 15, $7 | ||
1679 | mulq $8, $7, $28 | ||
1680 | srl $0, 32, $1 | ||
1681 | addq $6, $1, $6 | ||
1682 | cmpult $5, $25, $1 | ||
1683 | zapnot $2, 15, $5 | ||
1684 | addq $1, $6, $6 | ||
1685 | addq $3, $6, $6 | ||
1686 | addq $24, $6, $24 | ||
1687 | cmpult $24, $6, $1 | ||
1688 | srl $4, 32, $6 | ||
1689 | mulq $5, $6, $25 | ||
1690 | mulq $7, $5, $5 | ||
1691 | addq $1, $23, $23 | ||
1692 | addq $28, $25, $28 | ||
1693 | cmpult $28, $25, $1 | ||
1694 | mulq $6, $8, $6 | ||
1695 | beq $1, $309 | ||
1696 | sll $20, 32, $1 | ||
1697 | addq $6, $1, $6 | ||
1698 | $309: | ||
1699 | sll $28, 32, $25 | ||
1700 | ldq $2, 0($18) | ||
1701 | addq $5, $25, $5 | ||
1702 | bis $5, $5, $7 | ||
1703 | ldq $4, 56($17) | ||
1704 | addq $22, $7, $22 | ||
1705 | srl $2, 32, $8 | ||
1706 | cmpult $22, $7, $3 | ||
1707 | zapnot $4, 15, $7 | ||
1708 | mulq $8, $7, $0 | ||
1709 | srl $28, 32, $1 | ||
1710 | addq $6, $1, $6 | ||
1711 | cmpult $5, $25, $1 | ||
1712 | zapnot $2, 15, $5 | ||
1713 | addq $1, $6, $6 | ||
1714 | addq $3, $6, $6 | ||
1715 | addq $24, $6, $24 | ||
1716 | cmpult $24, $6, $1 | ||
1717 | srl $4, 32, $6 | ||
1718 | mulq $5, $6, $25 | ||
1719 | mulq $7, $5, $2 | ||
1720 | addq $1, $23, $23 | ||
1721 | addq $0, $25, $0 | ||
1722 | cmpult $0, $25, $1 | ||
1723 | mulq $6, $8, $6 | ||
1724 | beq $1, $313 | ||
1725 | sll $20, 32, $1 | ||
1726 | addq $6, $1, $6 | ||
1727 | $313: | ||
1728 | sll $0, 32, $25 | ||
1729 | addq $2, $25, $2 | ||
1730 | bis $2, $2, $7 | ||
1731 | addq $22, $7, $22 | ||
1732 | stq $22, 56($16) | ||
1733 | ldq $4, 56($17) | ||
1734 | ldq $5, 8($18) | ||
1735 | cmpult $22, $7, $3 | ||
1736 | zapnot $4, 15, $7 | ||
1737 | srl $5, 32, $8 | ||
1738 | mulq $8, $7, $28 | ||
1739 | srl $0, 32, $1 | ||
1740 | cmpult $2, $25, $2 | ||
1741 | addq $6, $1, $6 | ||
1742 | addq $2, $6, $6 | ||
1743 | addq $3, $6, $6 | ||
1744 | addq $24, $6, $24 | ||
1745 | cmpult $24, $6, $1 | ||
1746 | srl $4, 32, $6 | ||
1747 | zapnot $5, 15, $5 | ||
1748 | mulq $5, $6, $22 | ||
1749 | mulq $7, $5, $2 | ||
1750 | addq $1, $23, $23 | ||
1751 | addq $28, $22, $28 | ||
1752 | cmpult $28, $22, $1 | ||
1753 | mulq $6, $8, $6 | ||
1754 | beq $1, $317 | ||
1755 | sll $20, 32, $1 | ||
1756 | addq $6, $1, $6 | ||
1757 | $317: | ||
1758 | sll $28, 32, $22 | ||
1759 | ldq $1, 16($18) | ||
1760 | addq $2, $22, $2 | ||
1761 | bis $2, $2, $7 | ||
1762 | ldq $4, 48($17) | ||
1763 | addq $24, $7, $24 | ||
1764 | srl $1, 32, $8 | ||
1765 | cmpult $24, $7, $3 | ||
1766 | zapnot $4, 15, $7 | ||
1767 | mulq $8, $7, $25 | ||
1768 | zapnot $1, 15, $5 | ||
1769 | mulq $7, $5, $0 | ||
1770 | srl $28, 32, $1 | ||
1771 | cmpult $2, $22, $2 | ||
1772 | addq $6, $1, $6 | ||
1773 | addq $2, $6, $6 | ||
1774 | addq $3, $6, $6 | ||
1775 | addq $23, $6, $23 | ||
1776 | cmpult $23, $6, $22 | ||
1777 | srl $4, 32, $6 | ||
1778 | mulq $5, $6, $5 | ||
1779 | bis $31, 1, $21 | ||
1780 | addq $25, $5, $25 | ||
1781 | cmpult $25, $5, $1 | ||
1782 | mulq $6, $8, $6 | ||
1783 | beq $1, $321 | ||
1784 | sll $21, 32, $1 | ||
1785 | addq $6, $1, $6 | ||
1786 | $321: | ||
1787 | sll $25, 32, $5 | ||
1788 | ldq $2, 24($18) | ||
1789 | addq $0, $5, $0 | ||
1790 | bis $0, $0, $7 | ||
1791 | ldq $4, 40($17) | ||
1792 | addq $24, $7, $24 | ||
1793 | srl $2, 32, $8 | ||
1794 | cmpult $24, $7, $3 | ||
1795 | zapnot $4, 15, $7 | ||
1796 | mulq $8, $7, $28 | ||
1797 | srl $25, 32, $1 | ||
1798 | addq $6, $1, $6 | ||
1799 | cmpult $0, $5, $1 | ||
1800 | zapnot $2, 15, $5 | ||
1801 | addq $1, $6, $6 | ||
1802 | addq $3, $6, $6 | ||
1803 | addq $23, $6, $23 | ||
1804 | cmpult $23, $6, $1 | ||
1805 | srl $4, 32, $6 | ||
1806 | mulq $5, $6, $25 | ||
1807 | mulq $7, $5, $5 | ||
1808 | addq $1, $22, $22 | ||
1809 | addq $28, $25, $28 | ||
1810 | cmpult $28, $25, $1 | ||
1811 | mulq $6, $8, $6 | ||
1812 | beq $1, $325 | ||
1813 | sll $21, 32, $1 | ||
1814 | addq $6, $1, $6 | ||
1815 | $325: | ||
1816 | sll $28, 32, $25 | ||
1817 | ldq $2, 32($18) | ||
1818 | addq $5, $25, $5 | ||
1819 | bis $5, $5, $7 | ||
1820 | ldq $4, 32($17) | ||
1821 | addq $24, $7, $24 | ||
1822 | srl $2, 32, $8 | ||
1823 | cmpult $24, $7, $3 | ||
1824 | zapnot $4, 15, $7 | ||
1825 | mulq $8, $7, $0 | ||
1826 | srl $28, 32, $1 | ||
1827 | addq $6, $1, $6 | ||
1828 | cmpult $5, $25, $1 | ||
1829 | zapnot $2, 15, $5 | ||
1830 | addq $1, $6, $6 | ||
1831 | addq $3, $6, $6 | ||
1832 | addq $23, $6, $23 | ||
1833 | cmpult $23, $6, $1 | ||
1834 | srl $4, 32, $6 | ||
1835 | mulq $5, $6, $25 | ||
1836 | mulq $7, $5, $5 | ||
1837 | addq $1, $22, $22 | ||
1838 | addq $0, $25, $0 | ||
1839 | cmpult $0, $25, $1 | ||
1840 | mulq $6, $8, $6 | ||
1841 | beq $1, $329 | ||
1842 | sll $21, 32, $1 | ||
1843 | addq $6, $1, $6 | ||
1844 | $329: | ||
1845 | sll $0, 32, $25 | ||
1846 | ldq $2, 40($18) | ||
1847 | addq $5, $25, $5 | ||
1848 | bis $5, $5, $7 | ||
1849 | ldq $4, 24($17) | ||
1850 | addq $24, $7, $24 | ||
1851 | srl $2, 32, $8 | ||
1852 | cmpult $24, $7, $3 | ||
1853 | zapnot $4, 15, $7 | ||
1854 | mulq $8, $7, $28 | ||
1855 | srl $0, 32, $1 | ||
1856 | addq $6, $1, $6 | ||
1857 | cmpult $5, $25, $1 | ||
1858 | zapnot $2, 15, $5 | ||
1859 | addq $1, $6, $6 | ||
1860 | addq $3, $6, $6 | ||
1861 | addq $23, $6, $23 | ||
1862 | cmpult $23, $6, $1 | ||
1863 | srl $4, 32, $6 | ||
1864 | mulq $5, $6, $25 | ||
1865 | mulq $7, $5, $5 | ||
1866 | addq $1, $22, $22 | ||
1867 | addq $28, $25, $28 | ||
1868 | cmpult $28, $25, $1 | ||
1869 | mulq $6, $8, $6 | ||
1870 | beq $1, $333 | ||
1871 | sll $21, 32, $1 | ||
1872 | addq $6, $1, $6 | ||
1873 | $333: | ||
1874 | sll $28, 32, $25 | ||
1875 | ldq $2, 48($18) | ||
1876 | addq $5, $25, $5 | ||
1877 | bis $5, $5, $7 | ||
1878 | ldq $4, 16($17) | ||
1879 | addq $24, $7, $24 | ||
1880 | srl $2, 32, $8 | ||
1881 | cmpult $24, $7, $3 | ||
1882 | zapnot $4, 15, $7 | ||
1883 | mulq $8, $7, $0 | ||
1884 | srl $28, 32, $1 | ||
1885 | addq $6, $1, $6 | ||
1886 | cmpult $5, $25, $1 | ||
1887 | zapnot $2, 15, $5 | ||
1888 | addq $1, $6, $6 | ||
1889 | addq $3, $6, $6 | ||
1890 | addq $23, $6, $23 | ||
1891 | cmpult $23, $6, $1 | ||
1892 | srl $4, 32, $6 | ||
1893 | mulq $5, $6, $25 | ||
1894 | mulq $7, $5, $5 | ||
1895 | addq $1, $22, $22 | ||
1896 | addq $0, $25, $0 | ||
1897 | cmpult $0, $25, $1 | ||
1898 | mulq $6, $8, $6 | ||
1899 | beq $1, $337 | ||
1900 | sll $21, 32, $1 | ||
1901 | addq $6, $1, $6 | ||
1902 | $337: | ||
1903 | sll $0, 32, $25 | ||
1904 | ldq $2, 56($18) | ||
1905 | addq $5, $25, $5 | ||
1906 | bis $5, $5, $7 | ||
1907 | ldq $4, 8($17) | ||
1908 | addq $24, $7, $24 | ||
1909 | srl $2, 32, $8 | ||
1910 | cmpult $24, $7, $3 | ||
1911 | zapnot $4, 15, $7 | ||
1912 | mulq $8, $7, $28 | ||
1913 | srl $0, 32, $1 | ||
1914 | addq $6, $1, $6 | ||
1915 | cmpult $5, $25, $1 | ||
1916 | zapnot $2, 15, $5 | ||
1917 | addq $1, $6, $6 | ||
1918 | addq $3, $6, $6 | ||
1919 | addq $23, $6, $23 | ||
1920 | cmpult $23, $6, $1 | ||
1921 | srl $4, 32, $6 | ||
1922 | mulq $5, $6, $25 | ||
1923 | mulq $7, $5, $2 | ||
1924 | addq $1, $22, $22 | ||
1925 | addq $28, $25, $28 | ||
1926 | cmpult $28, $25, $1 | ||
1927 | mulq $6, $8, $6 | ||
1928 | beq $1, $341 | ||
1929 | sll $21, 32, $1 | ||
1930 | addq $6, $1, $6 | ||
1931 | $341: | ||
1932 | sll $28, 32, $25 | ||
1933 | addq $2, $25, $2 | ||
1934 | bis $2, $2, $7 | ||
1935 | addq $24, $7, $24 | ||
1936 | stq $24, 64($16) | ||
1937 | ldq $4, 16($17) | ||
1938 | ldq $5, 56($18) | ||
1939 | cmpult $24, $7, $3 | ||
1940 | zapnot $4, 15, $7 | ||
1941 | srl $5, 32, $8 | ||
1942 | mulq $8, $7, $0 | ||
1943 | srl $28, 32, $1 | ||
1944 | cmpult $2, $25, $2 | ||
1945 | addq $6, $1, $6 | ||
1946 | addq $2, $6, $6 | ||
1947 | addq $3, $6, $6 | ||
1948 | addq $23, $6, $23 | ||
1949 | cmpult $23, $6, $1 | ||
1950 | srl $4, 32, $6 | ||
1951 | zapnot $5, 15, $5 | ||
1952 | mulq $5, $6, $24 | ||
1953 | mulq $7, $5, $2 | ||
1954 | addq $1, $22, $22 | ||
1955 | addq $0, $24, $0 | ||
1956 | cmpult $0, $24, $1 | ||
1957 | mulq $6, $8, $6 | ||
1958 | beq $1, $345 | ||
1959 | sll $21, 32, $1 | ||
1960 | addq $6, $1, $6 | ||
1961 | $345: | ||
1962 | sll $0, 32, $24 | ||
1963 | ldq $1, 48($18) | ||
1964 | addq $2, $24, $2 | ||
1965 | bis $2, $2, $7 | ||
1966 | ldq $4, 24($17) | ||
1967 | addq $23, $7, $23 | ||
1968 | srl $1, 32, $8 | ||
1969 | cmpult $23, $7, $3 | ||
1970 | zapnot $4, 15, $7 | ||
1971 | mulq $8, $7, $25 | ||
1972 | zapnot $1, 15, $5 | ||
1973 | mulq $7, $5, $21 | ||
1974 | srl $0, 32, $1 | ||
1975 | cmpult $2, $24, $2 | ||
1976 | addq $6, $1, $6 | ||
1977 | addq $2, $6, $6 | ||
1978 | addq $3, $6, $6 | ||
1979 | addq $22, $6, $22 | ||
1980 | cmpult $22, $6, $24 | ||
1981 | srl $4, 32, $6 | ||
1982 | mulq $5, $6, $5 | ||
1983 | bis $31, 1, $20 | ||
1984 | addq $25, $5, $25 | ||
1985 | cmpult $25, $5, $1 | ||
1986 | mulq $6, $8, $6 | ||
1987 | beq $1, $349 | ||
1988 | sll $20, 32, $1 | ||
1989 | addq $6, $1, $6 | ||
1990 | $349: | ||
1991 | sll $25, 32, $5 | ||
1992 | ldq $2, 40($18) | ||
1993 | addq $21, $5, $21 | ||
1994 | bis $21, $21, $7 | ||
1995 | ldq $4, 32($17) | ||
1996 | addq $23, $7, $23 | ||
1997 | srl $2, 32, $8 | ||
1998 | cmpult $23, $7, $3 | ||
1999 | zapnot $4, 15, $7 | ||
2000 | mulq $8, $7, $28 | ||
2001 | srl $25, 32, $1 | ||
2002 | addq $6, $1, $6 | ||
2003 | cmpult $21, $5, $1 | ||
2004 | zapnot $2, 15, $5 | ||
2005 | addq $1, $6, $6 | ||
2006 | addq $3, $6, $6 | ||
2007 | addq $22, $6, $22 | ||
2008 | cmpult $22, $6, $1 | ||
2009 | srl $4, 32, $6 | ||
2010 | mulq $5, $6, $25 | ||
2011 | mulq $7, $5, $5 | ||
2012 | addq $1, $24, $24 | ||
2013 | addq $28, $25, $28 | ||
2014 | cmpult $28, $25, $1 | ||
2015 | mulq $6, $8, $6 | ||
2016 | beq $1, $353 | ||
2017 | sll $20, 32, $1 | ||
2018 | addq $6, $1, $6 | ||
2019 | $353: | ||
2020 | sll $28, 32, $25 | ||
2021 | ldq $2, 32($18) | ||
2022 | addq $5, $25, $5 | ||
2023 | bis $5, $5, $7 | ||
2024 | ldq $4, 40($17) | ||
2025 | addq $23, $7, $23 | ||
2026 | srl $2, 32, $8 | ||
2027 | cmpult $23, $7, $3 | ||
2028 | zapnot $4, 15, $7 | ||
2029 | mulq $8, $7, $0 | ||
2030 | srl $28, 32, $1 | ||
2031 | addq $6, $1, $6 | ||
2032 | cmpult $5, $25, $1 | ||
2033 | zapnot $2, 15, $5 | ||
2034 | addq $1, $6, $6 | ||
2035 | addq $3, $6, $6 | ||
2036 | addq $22, $6, $22 | ||
2037 | cmpult $22, $6, $1 | ||
2038 | srl $4, 32, $6 | ||
2039 | mulq $5, $6, $25 | ||
2040 | mulq $7, $5, $5 | ||
2041 | addq $1, $24, $24 | ||
2042 | addq $0, $25, $0 | ||
2043 | cmpult $0, $25, $1 | ||
2044 | mulq $6, $8, $6 | ||
2045 | beq $1, $357 | ||
2046 | sll $20, 32, $1 | ||
2047 | addq $6, $1, $6 | ||
2048 | $357: | ||
2049 | sll $0, 32, $25 | ||
2050 | ldq $2, 24($18) | ||
2051 | addq $5, $25, $5 | ||
2052 | bis $5, $5, $7 | ||
2053 | ldq $4, 48($17) | ||
2054 | addq $23, $7, $23 | ||
2055 | srl $2, 32, $8 | ||
2056 | cmpult $23, $7, $3 | ||
2057 | zapnot $4, 15, $7 | ||
2058 | mulq $8, $7, $28 | ||
2059 | srl $0, 32, $1 | ||
2060 | addq $6, $1, $6 | ||
2061 | cmpult $5, $25, $1 | ||
2062 | zapnot $2, 15, $5 | ||
2063 | addq $1, $6, $6 | ||
2064 | addq $3, $6, $6 | ||
2065 | addq $22, $6, $22 | ||
2066 | cmpult $22, $6, $1 | ||
2067 | srl $4, 32, $6 | ||
2068 | mulq $5, $6, $25 | ||
2069 | mulq $7, $5, $5 | ||
2070 | addq $1, $24, $24 | ||
2071 | addq $28, $25, $28 | ||
2072 | cmpult $28, $25, $1 | ||
2073 | mulq $6, $8, $6 | ||
2074 | beq $1, $361 | ||
2075 | sll $20, 32, $1 | ||
2076 | addq $6, $1, $6 | ||
2077 | $361: | ||
2078 | sll $28, 32, $25 | ||
2079 | ldq $2, 16($18) | ||
2080 | addq $5, $25, $5 | ||
2081 | bis $5, $5, $7 | ||
2082 | ldq $4, 56($17) | ||
2083 | addq $23, $7, $23 | ||
2084 | srl $2, 32, $8 | ||
2085 | cmpult $23, $7, $3 | ||
2086 | zapnot $4, 15, $7 | ||
2087 | mulq $8, $7, $0 | ||
2088 | srl $28, 32, $1 | ||
2089 | addq $6, $1, $6 | ||
2090 | cmpult $5, $25, $1 | ||
2091 | zapnot $2, 15, $5 | ||
2092 | addq $1, $6, $6 | ||
2093 | addq $3, $6, $6 | ||
2094 | addq $22, $6, $22 | ||
2095 | cmpult $22, $6, $1 | ||
2096 | srl $4, 32, $6 | ||
2097 | mulq $5, $6, $25 | ||
2098 | mulq $7, $5, $2 | ||
2099 | addq $1, $24, $24 | ||
2100 | addq $0, $25, $0 | ||
2101 | cmpult $0, $25, $1 | ||
2102 | mulq $6, $8, $6 | ||
2103 | beq $1, $365 | ||
2104 | sll $20, 32, $1 | ||
2105 | addq $6, $1, $6 | ||
2106 | $365: | ||
2107 | sll $0, 32, $25 | ||
2108 | addq $2, $25, $2 | ||
2109 | bis $2, $2, $7 | ||
2110 | addq $23, $7, $23 | ||
2111 | stq $23, 72($16) | ||
2112 | ldq $4, 56($17) | ||
2113 | ldq $5, 24($18) | ||
2114 | cmpult $23, $7, $3 | ||
2115 | zapnot $4, 15, $7 | ||
2116 | srl $5, 32, $8 | ||
2117 | mulq $8, $7, $28 | ||
2118 | srl $0, 32, $1 | ||
2119 | cmpult $2, $25, $2 | ||
2120 | addq $6, $1, $6 | ||
2121 | addq $2, $6, $6 | ||
2122 | addq $3, $6, $6 | ||
2123 | addq $22, $6, $22 | ||
2124 | cmpult $22, $6, $1 | ||
2125 | srl $4, 32, $6 | ||
2126 | zapnot $5, 15, $5 | ||
2127 | mulq $5, $6, $23 | ||
2128 | mulq $7, $5, $2 | ||
2129 | addq $1, $24, $24 | ||
2130 | addq $28, $23, $28 | ||
2131 | cmpult $28, $23, $1 | ||
2132 | mulq $6, $8, $6 | ||
2133 | beq $1, $369 | ||
2134 | sll $20, 32, $1 | ||
2135 | addq $6, $1, $6 | ||
2136 | $369: | ||
2137 | sll $28, 32, $23 | ||
2138 | ldq $1, 32($18) | ||
2139 | addq $2, $23, $2 | ||
2140 | bis $2, $2, $7 | ||
2141 | ldq $4, 48($17) | ||
2142 | addq $22, $7, $22 | ||
2143 | srl $1, 32, $8 | ||
2144 | cmpult $22, $7, $3 | ||
2145 | zapnot $4, 15, $7 | ||
2146 | mulq $8, $7, $25 | ||
2147 | zapnot $1, 15, $5 | ||
2148 | mulq $7, $5, $0 | ||
2149 | srl $28, 32, $1 | ||
2150 | cmpult $2, $23, $2 | ||
2151 | addq $6, $1, $6 | ||
2152 | addq $2, $6, $6 | ||
2153 | addq $3, $6, $6 | ||
2154 | addq $24, $6, $24 | ||
2155 | cmpult $24, $6, $23 | ||
2156 | srl $4, 32, $6 | ||
2157 | mulq $5, $6, $5 | ||
2158 | bis $31, 1, $21 | ||
2159 | addq $25, $5, $25 | ||
2160 | cmpult $25, $5, $1 | ||
2161 | mulq $6, $8, $6 | ||
2162 | beq $1, $373 | ||
2163 | sll $21, 32, $1 | ||
2164 | addq $6, $1, $6 | ||
2165 | $373: | ||
2166 | sll $25, 32, $5 | ||
2167 | ldq $2, 40($18) | ||
2168 | addq $0, $5, $0 | ||
2169 | bis $0, $0, $7 | ||
2170 | ldq $4, 40($17) | ||
2171 | addq $22, $7, $22 | ||
2172 | srl $2, 32, $8 | ||
2173 | cmpult $22, $7, $3 | ||
2174 | zapnot $4, 15, $7 | ||
2175 | mulq $8, $7, $28 | ||
2176 | srl $25, 32, $1 | ||
2177 | addq $6, $1, $6 | ||
2178 | cmpult $0, $5, $1 | ||
2179 | zapnot $2, 15, $5 | ||
2180 | addq $1, $6, $6 | ||
2181 | addq $3, $6, $6 | ||
2182 | addq $24, $6, $24 | ||
2183 | cmpult $24, $6, $1 | ||
2184 | srl $4, 32, $6 | ||
2185 | mulq $5, $6, $25 | ||
2186 | mulq $7, $5, $5 | ||
2187 | addq $1, $23, $23 | ||
2188 | addq $28, $25, $28 | ||
2189 | cmpult $28, $25, $1 | ||
2190 | mulq $6, $8, $6 | ||
2191 | beq $1, $377 | ||
2192 | sll $21, 32, $1 | ||
2193 | addq $6, $1, $6 | ||
2194 | $377: | ||
2195 | sll $28, 32, $25 | ||
2196 | ldq $2, 48($18) | ||
2197 | addq $5, $25, $5 | ||
2198 | bis $5, $5, $7 | ||
2199 | ldq $4, 32($17) | ||
2200 | addq $22, $7, $22 | ||
2201 | srl $2, 32, $8 | ||
2202 | cmpult $22, $7, $3 | ||
2203 | zapnot $4, 15, $7 | ||
2204 | mulq $8, $7, $0 | ||
2205 | srl $28, 32, $1 | ||
2206 | addq $6, $1, $6 | ||
2207 | cmpult $5, $25, $1 | ||
2208 | zapnot $2, 15, $5 | ||
2209 | addq $1, $6, $6 | ||
2210 | addq $3, $6, $6 | ||
2211 | addq $24, $6, $24 | ||
2212 | cmpult $24, $6, $1 | ||
2213 | srl $4, 32, $6 | ||
2214 | mulq $5, $6, $25 | ||
2215 | mulq $7, $5, $5 | ||
2216 | addq $1, $23, $23 | ||
2217 | addq $0, $25, $0 | ||
2218 | cmpult $0, $25, $1 | ||
2219 | mulq $6, $8, $6 | ||
2220 | beq $1, $381 | ||
2221 | sll $21, 32, $1 | ||
2222 | addq $6, $1, $6 | ||
2223 | $381: | ||
2224 | sll $0, 32, $25 | ||
2225 | ldq $2, 56($18) | ||
2226 | addq $5, $25, $5 | ||
2227 | bis $5, $5, $7 | ||
2228 | ldq $4, 24($17) | ||
2229 | addq $22, $7, $22 | ||
2230 | srl $2, 32, $8 | ||
2231 | cmpult $22, $7, $3 | ||
2232 | zapnot $4, 15, $7 | ||
2233 | mulq $8, $7, $28 | ||
2234 | srl $0, 32, $1 | ||
2235 | addq $6, $1, $6 | ||
2236 | cmpult $5, $25, $1 | ||
2237 | zapnot $2, 15, $5 | ||
2238 | addq $1, $6, $6 | ||
2239 | addq $3, $6, $6 | ||
2240 | addq $24, $6, $24 | ||
2241 | cmpult $24, $6, $1 | ||
2242 | srl $4, 32, $6 | ||
2243 | mulq $5, $6, $25 | ||
2244 | mulq $7, $5, $2 | ||
2245 | addq $1, $23, $23 | ||
2246 | addq $28, $25, $28 | ||
2247 | cmpult $28, $25, $1 | ||
2248 | mulq $6, $8, $6 | ||
2249 | beq $1, $385 | ||
2250 | sll $21, 32, $1 | ||
2251 | addq $6, $1, $6 | ||
2252 | $385: | ||
2253 | sll $28, 32, $25 | ||
2254 | addq $2, $25, $2 | ||
2255 | bis $2, $2, $7 | ||
2256 | addq $22, $7, $22 | ||
2257 | stq $22, 80($16) | ||
2258 | ldq $4, 32($17) | ||
2259 | ldq $5, 56($18) | ||
2260 | cmpult $22, $7, $3 | ||
2261 | zapnot $4, 15, $7 | ||
2262 | srl $5, 32, $8 | ||
2263 | mulq $8, $7, $0 | ||
2264 | srl $28, 32, $1 | ||
2265 | cmpult $2, $25, $2 | ||
2266 | addq $6, $1, $6 | ||
2267 | addq $2, $6, $6 | ||
2268 | addq $3, $6, $6 | ||
2269 | addq $24, $6, $24 | ||
2270 | cmpult $24, $6, $1 | ||
2271 | srl $4, 32, $6 | ||
2272 | zapnot $5, 15, $5 | ||
2273 | mulq $5, $6, $22 | ||
2274 | mulq $7, $5, $2 | ||
2275 | addq $1, $23, $23 | ||
2276 | addq $0, $22, $0 | ||
2277 | cmpult $0, $22, $1 | ||
2278 | mulq $6, $8, $6 | ||
2279 | beq $1, $389 | ||
2280 | sll $21, 32, $1 | ||
2281 | addq $6, $1, $6 | ||
2282 | $389: | ||
2283 | sll $0, 32, $22 | ||
2284 | ldq $1, 48($18) | ||
2285 | addq $2, $22, $2 | ||
2286 | bis $2, $2, $7 | ||
2287 | ldq $4, 40($17) | ||
2288 | addq $24, $7, $24 | ||
2289 | srl $1, 32, $8 | ||
2290 | cmpult $24, $7, $3 | ||
2291 | zapnot $4, 15, $7 | ||
2292 | mulq $8, $7, $25 | ||
2293 | zapnot $1, 15, $5 | ||
2294 | mulq $7, $5, $21 | ||
2295 | srl $0, 32, $1 | ||
2296 | cmpult $2, $22, $2 | ||
2297 | addq $6, $1, $6 | ||
2298 | addq $2, $6, $6 | ||
2299 | addq $3, $6, $6 | ||
2300 | addq $23, $6, $23 | ||
2301 | cmpult $23, $6, $22 | ||
2302 | srl $4, 32, $6 | ||
2303 | mulq $5, $6, $5 | ||
2304 | bis $31, 1, $20 | ||
2305 | addq $25, $5, $25 | ||
2306 | cmpult $25, $5, $1 | ||
2307 | mulq $6, $8, $6 | ||
2308 | beq $1, $393 | ||
2309 | sll $20, 32, $1 | ||
2310 | addq $6, $1, $6 | ||
2311 | $393: | ||
2312 | sll $25, 32, $5 | ||
2313 | ldq $2, 40($18) | ||
2314 | addq $21, $5, $21 | ||
2315 | bis $21, $21, $7 | ||
2316 | ldq $4, 48($17) | ||
2317 | addq $24, $7, $24 | ||
2318 | srl $2, 32, $8 | ||
2319 | cmpult $24, $7, $3 | ||
2320 | zapnot $4, 15, $7 | ||
2321 | mulq $8, $7, $28 | ||
2322 | srl $25, 32, $1 | ||
2323 | addq $6, $1, $6 | ||
2324 | cmpult $21, $5, $1 | ||
2325 | zapnot $2, 15, $5 | ||
2326 | addq $1, $6, $6 | ||
2327 | addq $3, $6, $6 | ||
2328 | addq $23, $6, $23 | ||
2329 | cmpult $23, $6, $1 | ||
2330 | srl $4, 32, $6 | ||
2331 | mulq $5, $6, $25 | ||
2332 | mulq $7, $5, $5 | ||
2333 | addq $1, $22, $22 | ||
2334 | addq $28, $25, $28 | ||
2335 | cmpult $28, $25, $1 | ||
2336 | mulq $6, $8, $6 | ||
2337 | beq $1, $397 | ||
2338 | sll $20, 32, $1 | ||
2339 | addq $6, $1, $6 | ||
2340 | $397: | ||
2341 | sll $28, 32, $25 | ||
2342 | ldq $2, 32($18) | ||
2343 | addq $5, $25, $5 | ||
2344 | bis $5, $5, $7 | ||
2345 | ldq $4, 56($17) | ||
2346 | addq $24, $7, $24 | ||
2347 | srl $2, 32, $8 | ||
2348 | cmpult $24, $7, $3 | ||
2349 | zapnot $4, 15, $7 | ||
2350 | mulq $8, $7, $21 | ||
2351 | srl $28, 32, $1 | ||
2352 | addq $6, $1, $6 | ||
2353 | cmpult $5, $25, $1 | ||
2354 | zapnot $2, 15, $5 | ||
2355 | addq $1, $6, $6 | ||
2356 | addq $3, $6, $6 | ||
2357 | addq $23, $6, $23 | ||
2358 | cmpult $23, $6, $1 | ||
2359 | srl $4, 32, $6 | ||
2360 | mulq $5, $6, $25 | ||
2361 | mulq $7, $5, $2 | ||
2362 | addq $1, $22, $22 | ||
2363 | addq $21, $25, $21 | ||
2364 | cmpult $21, $25, $1 | ||
2365 | mulq $6, $8, $6 | ||
2366 | beq $1, $401 | ||
2367 | sll $20, 32, $1 | ||
2368 | addq $6, $1, $6 | ||
2369 | $401: | ||
2370 | sll $21, 32, $25 | ||
2371 | addq $2, $25, $2 | ||
2372 | bis $2, $2, $7 | ||
2373 | addq $24, $7, $24 | ||
2374 | stq $24, 88($16) | ||
2375 | ldq $4, 56($17) | ||
2376 | ldq $5, 40($18) | ||
2377 | cmpult $24, $7, $3 | ||
2378 | zapnot $4, 15, $7 | ||
2379 | srl $5, 32, $8 | ||
2380 | mulq $8, $7, $0 | ||
2381 | srl $21, 32, $1 | ||
2382 | cmpult $2, $25, $2 | ||
2383 | addq $6, $1, $6 | ||
2384 | addq $2, $6, $6 | ||
2385 | addq $3, $6, $6 | ||
2386 | addq $23, $6, $23 | ||
2387 | cmpult $23, $6, $1 | ||
2388 | srl $4, 32, $6 | ||
2389 | zapnot $5, 15, $5 | ||
2390 | mulq $5, $6, $24 | ||
2391 | mulq $7, $5, $5 | ||
2392 | addq $1, $22, $22 | ||
2393 | addq $0, $24, $0 | ||
2394 | cmpult $0, $24, $1 | ||
2395 | mulq $6, $8, $6 | ||
2396 | beq $1, $405 | ||
2397 | sll $20, 32, $1 | ||
2398 | addq $6, $1, $6 | ||
2399 | $405: | ||
2400 | sll $0, 32, $24 | ||
2401 | ldq $2, 48($18) | ||
2402 | addq $5, $24, $5 | ||
2403 | bis $5, $5, $7 | ||
2404 | ldq $4, 48($17) | ||
2405 | addq $23, $7, $23 | ||
2406 | srl $2, 32, $8 | ||
2407 | cmpult $23, $7, $3 | ||
2408 | zapnot $4, 15, $7 | ||
2409 | mulq $8, $7, $28 | ||
2410 | srl $0, 32, $1 | ||
2411 | addq $6, $1, $6 | ||
2412 | cmpult $5, $24, $1 | ||
2413 | zapnot $2, 15, $5 | ||
2414 | addq $1, $6, $6 | ||
2415 | addq $3, $6, $6 | ||
2416 | addq $22, $6, $22 | ||
2417 | cmpult $22, $6, $24 | ||
2418 | srl $4, 32, $6 | ||
2419 | mulq $5, $6, $25 | ||
2420 | mulq $7, $5, $5 | ||
2421 | addq $28, $25, $28 | ||
2422 | cmpult $28, $25, $1 | ||
2423 | mulq $6, $8, $6 | ||
2424 | beq $1, $409 | ||
2425 | sll $20, 32, $1 | ||
2426 | addq $6, $1, $6 | ||
2427 | $409: | ||
2428 | sll $28, 32, $25 | ||
2429 | ldq $2, 56($18) | ||
2430 | addq $5, $25, $5 | ||
2431 | bis $5, $5, $7 | ||
2432 | ldq $4, 40($17) | ||
2433 | addq $23, $7, $23 | ||
2434 | srl $2, 32, $8 | ||
2435 | cmpult $23, $7, $3 | ||
2436 | zapnot $4, 15, $7 | ||
2437 | mulq $8, $7, $0 | ||
2438 | srl $28, 32, $1 | ||
2439 | addq $6, $1, $6 | ||
2440 | cmpult $5, $25, $1 | ||
2441 | zapnot $2, 15, $5 | ||
2442 | addq $1, $6, $6 | ||
2443 | addq $3, $6, $6 | ||
2444 | addq $22, $6, $22 | ||
2445 | cmpult $22, $6, $1 | ||
2446 | srl $4, 32, $6 | ||
2447 | mulq $5, $6, $25 | ||
2448 | mulq $7, $5, $2 | ||
2449 | addq $1, $24, $24 | ||
2450 | addq $0, $25, $0 | ||
2451 | cmpult $0, $25, $1 | ||
2452 | mulq $6, $8, $6 | ||
2453 | beq $1, $413 | ||
2454 | sll $20, 32, $1 | ||
2455 | addq $6, $1, $6 | ||
2456 | $413: | ||
2457 | sll $0, 32, $25 | ||
2458 | addq $2, $25, $2 | ||
2459 | bis $2, $2, $7 | ||
2460 | addq $23, $7, $23 | ||
2461 | stq $23, 96($16) | ||
2462 | ldq $4, 48($17) | ||
2463 | ldq $5, 56($18) | ||
2464 | cmpult $23, $7, $3 | ||
2465 | zapnot $4, 15, $7 | ||
2466 | srl $5, 32, $8 | ||
2467 | mulq $8, $7, $28 | ||
2468 | srl $0, 32, $1 | ||
2469 | cmpult $2, $25, $2 | ||
2470 | addq $6, $1, $6 | ||
2471 | addq $2, $6, $6 | ||
2472 | addq $3, $6, $6 | ||
2473 | addq $22, $6, $22 | ||
2474 | cmpult $22, $6, $1 | ||
2475 | srl $4, 32, $6 | ||
2476 | zapnot $5, 15, $5 | ||
2477 | mulq $5, $6, $23 | ||
2478 | mulq $7, $5, $5 | ||
2479 | addq $1, $24, $24 | ||
2480 | addq $28, $23, $28 | ||
2481 | cmpult $28, $23, $1 | ||
2482 | mulq $6, $8, $6 | ||
2483 | beq $1, $417 | ||
2484 | sll $20, 32, $1 | ||
2485 | addq $6, $1, $6 | ||
2486 | $417: | ||
2487 | sll $28, 32, $23 | ||
2488 | ldq $2, 48($18) | ||
2489 | addq $5, $23, $5 | ||
2490 | bis $5, $5, $7 | ||
2491 | ldq $4, 56($17) | ||
2492 | addq $22, $7, $22 | ||
2493 | srl $2, 32, $8 | ||
2494 | cmpult $22, $7, $3 | ||
2495 | zapnot $4, 15, $7 | ||
2496 | mulq $8, $7, $0 | ||
2497 | srl $28, 32, $1 | ||
2498 | addq $6, $1, $6 | ||
2499 | cmpult $5, $23, $1 | ||
2500 | zapnot $2, 15, $5 | ||
2501 | addq $1, $6, $6 | ||
2502 | addq $3, $6, $6 | ||
2503 | addq $24, $6, $24 | ||
2504 | cmpult $24, $6, $23 | ||
2505 | srl $4, 32, $6 | ||
2506 | mulq $5, $6, $25 | ||
2507 | mulq $7, $5, $2 | ||
2508 | addq $0, $25, $0 | ||
2509 | cmpult $0, $25, $1 | ||
2510 | mulq $6, $8, $6 | ||
2511 | beq $1, $421 | ||
2512 | sll $20, 32, $1 | ||
2513 | addq $6, $1, $6 | ||
2514 | $421: | ||
2515 | sll $0, 32, $25 | ||
2516 | addq $2, $25, $2 | ||
2517 | bis $2, $2, $7 | ||
2518 | addq $22, $7, $22 | ||
2519 | stq $22, 104($16) | ||
2520 | ldq $4, 56($17) | ||
2521 | ldq $5, 56($18) | ||
2522 | cmpult $22, $7, $3 | ||
2523 | zapnot $4, 15, $7 | ||
2524 | srl $5, 32, $8 | ||
2525 | mulq $8, $7, $28 | ||
2526 | srl $0, 32, $1 | ||
2527 | cmpult $2, $25, $2 | ||
2528 | addq $6, $1, $6 | ||
2529 | addq $2, $6, $6 | ||
2530 | addq $3, $6, $6 | ||
2531 | addq $24, $6, $24 | ||
2532 | cmpult $24, $6, $1 | ||
2533 | srl $4, 32, $6 | ||
2534 | zapnot $5, 15, $5 | ||
2535 | mulq $5, $6, $22 | ||
2536 | mulq $7, $5, $2 | ||
2537 | addq $1, $23, $23 | ||
2538 | addq $28, $22, $28 | ||
2539 | cmpult $28, $22, $1 | ||
2540 | mulq $6, $8, $3 | ||
2541 | beq $1, $425 | ||
2542 | sll $20, 32, $1 | ||
2543 | addq $3, $1, $3 | ||
2544 | $425: | ||
2545 | sll $28, 32, $22 | ||
2546 | srl $28, 32, $1 | ||
2547 | addq $2, $22, $2 | ||
2548 | addq $3, $1, $3 | ||
2549 | bis $2, $2, $7 | ||
2550 | addq $24, $7, $24 | ||
2551 | cmpult $7, $22, $1 | ||
2552 | cmpult $24, $7, $2 | ||
2553 | addq $1, $3, $6 | ||
2554 | addq $2, $6, $6 | ||
2555 | stq $24, 112($16) | ||
2556 | addq $23, $6, $23 | ||
2557 | stq $23, 120($16) | ||
2558 | ret $31, ($26), 1 | ||
1258 | .end bn_mul_comba8 | 2559 | .end bn_mul_comba8 |
1259 | .text | 2560 | .text |
1260 | .align 3 | 2561 | .align 3 |
diff --git a/src/lib/libcrypto/bn/asm/mips3.s b/src/lib/libcrypto/bn/asm/mips3.s index 191345d920..2df4dcd4b0 100644 --- a/src/lib/libcrypto/bn/asm/mips3.s +++ b/src/lib/libcrypto/bn/asm/mips3.s | |||
@@ -395,32 +395,32 @@ LEAF(bn_add_words) | |||
395 | 395 | ||
396 | .L_bn_add_words_loop: | 396 | .L_bn_add_words_loop: |
397 | ld ta0,0(a2) | 397 | ld ta0,0(a2) |
398 | subu a3,4 | ||
398 | ld t1,8(a1) | 399 | ld t1,8(a1) |
399 | ld ta1,8(a2) | 400 | and AT,a3,MINUS4 |
400 | ld t2,16(a1) | 401 | ld t2,16(a1) |
401 | ld ta2,16(a2) | 402 | PTR_ADD a2,32 |
402 | ld t3,24(a1) | 403 | ld t3,24(a1) |
403 | ld ta3,24(a2) | 404 | PTR_ADD a0,32 |
405 | ld ta1,-24(a2) | ||
406 | PTR_ADD a1,32 | ||
407 | ld ta2,-16(a2) | ||
408 | ld ta3,-8(a2) | ||
404 | daddu ta0,t0 | 409 | daddu ta0,t0 |
405 | subu a3,4 | ||
406 | sltu t8,ta0,t0 | 410 | sltu t8,ta0,t0 |
407 | daddu t0,ta0,v0 | 411 | daddu t0,ta0,v0 |
408 | PTR_ADD a0,32 | ||
409 | sltu v0,t0,ta0 | 412 | sltu v0,t0,ta0 |
410 | sd t0,-32(a0) | 413 | sd t0,-32(a0) |
411 | daddu v0,t8 | 414 | daddu v0,t8 |
412 | 415 | ||
413 | daddu ta1,t1 | 416 | daddu ta1,t1 |
414 | PTR_ADD a1,32 | ||
415 | sltu t9,ta1,t1 | 417 | sltu t9,ta1,t1 |
416 | daddu t1,ta1,v0 | 418 | daddu t1,ta1,v0 |
417 | PTR_ADD a2,32 | ||
418 | sltu v0,t1,ta1 | 419 | sltu v0,t1,ta1 |
419 | sd t1,-24(a0) | 420 | sd t1,-24(a0) |
420 | daddu v0,t9 | 421 | daddu v0,t9 |
421 | 422 | ||
422 | daddu ta2,t2 | 423 | daddu ta2,t2 |
423 | and AT,a3,MINUS4 | ||
424 | sltu t8,ta2,t2 | 424 | sltu t8,ta2,t2 |
425 | daddu t2,ta2,v0 | 425 | daddu t2,ta2,v0 |
426 | sltu v0,t2,ta2 | 426 | sltu v0,t2,ta2 |
@@ -495,25 +495,26 @@ LEAF(bn_sub_words) | |||
495 | 495 | ||
496 | .L_bn_sub_words_loop: | 496 | .L_bn_sub_words_loop: |
497 | ld ta0,0(a2) | 497 | ld ta0,0(a2) |
498 | subu a3,4 | ||
498 | ld t1,8(a1) | 499 | ld t1,8(a1) |
499 | ld ta1,8(a2) | 500 | and AT,a3,MINUS4 |
500 | ld t2,16(a1) | 501 | ld t2,16(a1) |
501 | ld ta2,16(a2) | 502 | PTR_ADD a2,32 |
502 | ld t3,24(a1) | 503 | ld t3,24(a1) |
503 | ld ta3,24(a2) | 504 | PTR_ADD a0,32 |
505 | ld ta1,-24(a2) | ||
506 | PTR_ADD a1,32 | ||
507 | ld ta2,-16(a2) | ||
508 | ld ta3,-8(a2) | ||
504 | sltu t8,t0,ta0 | 509 | sltu t8,t0,ta0 |
505 | dsubu t0,ta0 | 510 | dsubu t0,ta0 |
506 | subu a3,4 | ||
507 | dsubu ta0,t0,v0 | 511 | dsubu ta0,t0,v0 |
508 | and AT,a3,MINUS4 | 512 | sd ta0,-32(a0) |
509 | sd ta0,0(a0) | ||
510 | MOVNZ (t0,v0,t8) | 513 | MOVNZ (t0,v0,t8) |
511 | 514 | ||
512 | sltu t9,t1,ta1 | 515 | sltu t9,t1,ta1 |
513 | dsubu t1,ta1 | 516 | dsubu t1,ta1 |
514 | PTR_ADD a0,32 | ||
515 | dsubu ta1,t1,v0 | 517 | dsubu ta1,t1,v0 |
516 | PTR_ADD a1,32 | ||
517 | sd ta1,-24(a0) | 518 | sd ta1,-24(a0) |
518 | MOVNZ (t1,v0,t9) | 519 | MOVNZ (t1,v0,t9) |
519 | 520 | ||
@@ -521,7 +522,6 @@ LEAF(bn_sub_words) | |||
521 | sltu t8,t2,ta2 | 522 | sltu t8,t2,ta2 |
522 | dsubu t2,ta2 | 523 | dsubu t2,ta2 |
523 | dsubu ta2,t2,v0 | 524 | dsubu ta2,t2,v0 |
524 | PTR_ADD a2,32 | ||
525 | sd ta2,-16(a0) | 525 | sd ta2,-16(a0) |
526 | MOVNZ (t2,v0,t8) | 526 | MOVNZ (t2,v0,t8) |
527 | 527 | ||
@@ -574,6 +574,51 @@ END(bn_sub_words) | |||
574 | 574 | ||
575 | #undef MINUS4 | 575 | #undef MINUS4 |
576 | 576 | ||
577 | .align 5 | ||
578 | LEAF(bn_div_3_words) | ||
579 | .set reorder | ||
580 | move a3,a0 /* we know that bn_div_words doesn't | ||
581 | * touch a3, ta2, ta3 and preserves a2 | ||
582 | * so that we can save two arguments | ||
583 | * and return address in registers | ||
584 | * instead of stack:-) | ||
585 | */ | ||
586 | ld a0,(a3) | ||
587 | move ta2,a1 | ||
588 | ld a1,-8(a3) | ||
589 | move ta3,ra | ||
590 | move v1,zero | ||
591 | li v0,-1 | ||
592 | beq a0,a2,.L_bn_div_3_words_skip_div | ||
593 | bal bn_div_words | ||
594 | move ra,ta3 | ||
595 | .L_bn_div_3_words_skip_div: | ||
596 | dmultu ta2,v0 | ||
597 | ld t2,-16(a3) | ||
598 | move ta0,zero | ||
599 | mfhi t1 | ||
600 | mflo t0 | ||
601 | sltu t8,t1,v1 | ||
602 | .L_bn_div_3_words_inner_loop: | ||
603 | bnez t8,.L_bn_div_3_words_inner_loop_done | ||
604 | sgeu AT,t2,t0 | ||
605 | seq t9,t1,v1 | ||
606 | and AT,t9 | ||
607 | sltu t3,t0,ta2 | ||
608 | daddu v1,a2 | ||
609 | dsubu t1,t3 | ||
610 | dsubu t0,ta2 | ||
611 | sltu t8,t1,v1 | ||
612 | sltu ta0,v1,a2 | ||
613 | or t8,ta0 | ||
614 | .set noreorder | ||
615 | beqzl AT,.L_bn_div_3_words_inner_loop | ||
616 | dsubu v0,1 | ||
617 | .set reorder | ||
618 | .L_bn_div_3_words_inner_loop_done: | ||
619 | jr ra | ||
620 | END(bn_div_3_words) | ||
621 | |||
577 | .align 5 | 622 | .align 5 |
578 | LEAF(bn_div_words) | 623 | LEAF(bn_div_words) |
579 | .set noreorder | 624 | .set noreorder |
@@ -633,16 +678,16 @@ LEAF(bn_div_words) | |||
633 | seq t8,HH,t1 | 678 | seq t8,HH,t1 |
634 | sltu AT,HH,t1 | 679 | sltu AT,HH,t1 |
635 | and t2,t8 | 680 | and t2,t8 |
681 | sltu v0,t0,a2 | ||
636 | or AT,t2 | 682 | or AT,t2 |
637 | .set noreorder | 683 | .set noreorder |
638 | beqz AT,.L_bn_div_words_inner_loop1_done | 684 | beqz AT,.L_bn_div_words_inner_loop1_done |
639 | sltu t2,t0,a2 | 685 | dsubu t1,v0 |
640 | .set reorder | ||
641 | dsubu QT,1 | ||
642 | dsubu t0,a2 | 686 | dsubu t0,a2 |
643 | dsubu t1,t2 | ||
644 | b .L_bn_div_words_inner_loop1 | 687 | b .L_bn_div_words_inner_loop1 |
645 | .L_bn_div_words_inner_loop1_done: | 688 | dsubu QT,1 |
689 | .set reorder | ||
690 | .L_bn_div_words_inner_loop1_done: | ||
646 | 691 | ||
647 | dsll a1,32 | 692 | dsll a1,32 |
648 | dsubu a0,t3,t0 | 693 | dsubu a0,t3,t0 |
@@ -655,6 +700,7 @@ LEAF(bn_div_words) | |||
655 | ddivu zero,a0,DH | 700 | ddivu zero,a0,DH |
656 | mflo QT | 701 | mflo QT |
657 | .L_bn_div_words_skip_div2: | 702 | .L_bn_div_words_skip_div2: |
703 | #undef DH | ||
658 | dmultu a2,QT | 704 | dmultu a2,QT |
659 | dsll t3,a0,32 | 705 | dsll t3,a0,32 |
660 | dsrl AT,a1,32 | 706 | dsrl AT,a1,32 |
@@ -666,69 +712,26 @@ LEAF(bn_div_words) | |||
666 | seq t8,HH,t1 | 712 | seq t8,HH,t1 |
667 | sltu AT,HH,t1 | 713 | sltu AT,HH,t1 |
668 | and t2,t8 | 714 | and t2,t8 |
715 | sltu v1,t0,a2 | ||
669 | or AT,t2 | 716 | or AT,t2 |
670 | .set noreorder | 717 | .set noreorder |
671 | beqz AT,.L_bn_div_words_inner_loop2_done | 718 | beqz AT,.L_bn_div_words_inner_loop2_done |
672 | sltu t2,t0,a2 | 719 | dsubu t1,v1 |
673 | .set reorder | ||
674 | dsubu QT,1 | ||
675 | dsubu t0,a2 | 720 | dsubu t0,a2 |
676 | dsubu t1,t2 | ||
677 | b .L_bn_div_words_inner_loop2 | 721 | b .L_bn_div_words_inner_loop2 |
722 | dsubu QT,1 | ||
723 | .set reorder | ||
678 | .L_bn_div_words_inner_loop2_done: | 724 | .L_bn_div_words_inner_loop2_done: |
725 | #undef HH | ||
679 | 726 | ||
680 | dsubu a0,t3,t0 | 727 | dsubu a0,t3,t0 |
681 | or v0,QT | 728 | or v0,QT |
682 | dsrl v1,a0,t9 /* v1 contains remainder if anybody wants it */ | 729 | dsrl v1,a0,t9 /* v1 contains remainder if anybody wants it */ |
683 | dsrl a2,t9 /* restore a2 */ | 730 | dsrl a2,t9 /* restore a2 */ |
684 | jr ra | 731 | jr ra |
685 | #undef HH | ||
686 | #undef DH | ||
687 | #undef QT | 732 | #undef QT |
688 | END(bn_div_words) | 733 | END(bn_div_words) |
689 | 734 | ||
690 | .align 5 | ||
691 | LEAF(bn_div_3_words) | ||
692 | .set reorder | ||
693 | move a3,a0 /* we know that bn_div_words doesn't | ||
694 | * touch a3, ta2, ta3 and preserves a2 | ||
695 | * so that we can save two arguments | ||
696 | * and return address in registers | ||
697 | * instead of stack:-) | ||
698 | */ | ||
699 | ld a0,(a3) | ||
700 | move ta2,a2 | ||
701 | move a2,a1 | ||
702 | ld a1,-8(a3) | ||
703 | move ta3,ra | ||
704 | move v1,zero | ||
705 | li v0,-1 | ||
706 | beq a0,a2,.L_bn_div_3_words_skip_div | ||
707 | jal bn_div_words | ||
708 | move ra,ta3 | ||
709 | .L_bn_div_3_words_skip_div: | ||
710 | dmultu ta2,v0 | ||
711 | ld t2,-16(a3) | ||
712 | mflo t0 | ||
713 | mfhi t1 | ||
714 | .L_bn_div_3_words_inner_loop: | ||
715 | sgeu AT,t2,t0 | ||
716 | seq t9,t1,v1 | ||
717 | sltu t8,t1,v1 | ||
718 | and AT,t9 | ||
719 | or AT,t8 | ||
720 | bnez AT,.L_bn_div_3_words_inner_loop_done | ||
721 | daddu v1,a2 | ||
722 | sltu t3,t0,ta2 | ||
723 | sltu AT,v1,a2 | ||
724 | dsubu v0,1 | ||
725 | dsubu t0,ta2 | ||
726 | dsubu t1,t3 | ||
727 | beqz AT,.L_bn_div_3_words_inner_loop | ||
728 | .L_bn_div_3_words_inner_loop_done: | ||
729 | jr ra | ||
730 | END(bn_div_3_words) | ||
731 | |||
732 | #define a_0 t0 | 735 | #define a_0 t0 |
733 | #define a_1 t1 | 736 | #define a_1 t1 |
734 | #define a_2 t2 | 737 | #define a_2 t2 |