OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
6 // met: | 6 // met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 889 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
900 void movt_d(FPURegister fd, FPURegister fs, uint16_t cc); | 900 void movt_d(FPURegister fd, FPURegister fs, uint16_t cc); |
901 void movf_s(FPURegister fd, FPURegister fs, uint16_t cc); | 901 void movf_s(FPURegister fd, FPURegister fs, uint16_t cc); |
902 void movf_d(FPURegister fd, FPURegister fs, uint16_t cc); | 902 void movf_d(FPURegister fd, FPURegister fs, uint16_t cc); |
903 void movn_s(FPURegister fd, FPURegister fs, Register rt); | 903 void movn_s(FPURegister fd, FPURegister fs, Register rt); |
904 void movn_d(FPURegister fd, FPURegister fs, Register rt); | 904 void movn_d(FPURegister fd, FPURegister fs, Register rt); |
905 // Bit twiddling. | 905 // Bit twiddling. |
906 void clz(Register rd, Register rs); | 906 void clz(Register rd, Register rs); |
907 void ins_(Register rt, Register rs, uint16_t pos, uint16_t size); | 907 void ins_(Register rt, Register rs, uint16_t pos, uint16_t size); |
908 void ext_(Register rt, Register rs, uint16_t pos, uint16_t size); | 908 void ext_(Register rt, Register rs, uint16_t pos, uint16_t size); |
909 void dext_(Register rt, Register rs, uint16_t pos, uint16_t size); | 909 void dext_(Register rt, Register rs, uint16_t pos, uint16_t size); |
| 910 void bitswap(Register rd, Register rt); |
| 911 void dbitswap(Register rd, Register rt); |
910 | 912 |
911 // --------Coprocessor-instructions---------------- | 913 // --------Coprocessor-instructions---------------- |
912 | 914 |
913 // Load, store, and move. | 915 // Load, store, and move. |
914 void lwc1(FPURegister fd, const MemOperand& src); | 916 void lwc1(FPURegister fd, const MemOperand& src); |
915 void ldc1(FPURegister fd, const MemOperand& src); | 917 void ldc1(FPURegister fd, const MemOperand& src); |
916 | 918 |
917 void swc1(FPURegister fs, const MemOperand& dst); | 919 void swc1(FPURegister fs, const MemOperand& dst); |
918 void sdc1(FPURegister fs, const MemOperand& dst); | 920 void sdc1(FPURegister fs, const MemOperand& dst); |
919 | 921 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
971 void cvt_l_d(FPURegister fd, FPURegister fs); | 973 void cvt_l_d(FPURegister fd, FPURegister fs); |
972 void trunc_l_s(FPURegister fd, FPURegister fs); | 974 void trunc_l_s(FPURegister fd, FPURegister fs); |
973 void trunc_l_d(FPURegister fd, FPURegister fs); | 975 void trunc_l_d(FPURegister fd, FPURegister fs); |
974 void round_l_s(FPURegister fd, FPURegister fs); | 976 void round_l_s(FPURegister fd, FPURegister fs); |
975 void round_l_d(FPURegister fd, FPURegister fs); | 977 void round_l_d(FPURegister fd, FPURegister fs); |
976 void floor_l_s(FPURegister fd, FPURegister fs); | 978 void floor_l_s(FPURegister fd, FPURegister fs); |
977 void floor_l_d(FPURegister fd, FPURegister fs); | 979 void floor_l_d(FPURegister fd, FPURegister fs); |
978 void ceil_l_s(FPURegister fd, FPURegister fs); | 980 void ceil_l_s(FPURegister fd, FPURegister fs); |
979 void ceil_l_d(FPURegister fd, FPURegister fs); | 981 void ceil_l_d(FPURegister fd, FPURegister fs); |
980 | 982 |
| 983 void class_s(FPURegister fd, FPURegister fs); |
| 984 void class_d(FPURegister fd, FPURegister fs); |
| 985 |
981 void min(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); | 986 void min(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); |
982 void mina(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); | 987 void mina(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); |
983 void max(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); | 988 void max(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); |
984 void maxa(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); | 989 void maxa(SecondaryField fmt, FPURegister fd, FPURegister fs, FPURegister ft); |
985 void min_s(FPURegister fd, FPURegister fs, FPURegister ft); | 990 void min_s(FPURegister fd, FPURegister fs, FPURegister ft); |
986 void min_d(FPURegister fd, FPURegister fs, FPURegister ft); | 991 void min_d(FPURegister fd, FPURegister fs, FPURegister ft); |
987 void max_s(FPURegister fd, FPURegister fs, FPURegister ft); | 992 void max_s(FPURegister fd, FPURegister fs, FPURegister ft); |
988 void max_d(FPURegister fd, FPURegister fs, FPURegister ft); | 993 void max_d(FPURegister fd, FPURegister fs, FPURegister ft); |
989 void mina_s(FPURegister fd, FPURegister fs, FPURegister ft); | 994 void mina_s(FPURegister fd, FPURegister fs, FPURegister ft); |
990 void mina_d(FPURegister fd, FPURegister fs, FPURegister ft); | 995 void mina_d(FPURegister fd, FPURegister fs, FPURegister ft); |
991 void maxa_s(FPURegister fd, FPURegister fs, FPURegister ft); | 996 void maxa_s(FPURegister fd, FPURegister fs, FPURegister ft); |
992 void maxa_d(FPURegister fd, FPURegister fs, FPURegister ft); | 997 void maxa_d(FPURegister fd, FPURegister fs, FPURegister ft); |
993 | 998 |
994 void cvt_s_w(FPURegister fd, FPURegister fs); | 999 void cvt_s_w(FPURegister fd, FPURegister fs); |
995 void cvt_s_l(FPURegister fd, FPURegister fs); | 1000 void cvt_s_l(FPURegister fd, FPURegister fs); |
996 void cvt_s_d(FPURegister fd, FPURegister fs); | 1001 void cvt_s_d(FPURegister fd, FPURegister fs); |
997 | 1002 |
998 void cvt_d_w(FPURegister fd, FPURegister fs); | 1003 void cvt_d_w(FPURegister fd, FPURegister fs); |
999 void cvt_d_l(FPURegister fd, FPURegister fs); | 1004 void cvt_d_l(FPURegister fd, FPURegister fs); |
1000 void cvt_d_s(FPURegister fd, FPURegister fs); | 1005 void cvt_d_s(FPURegister fd, FPURegister fs); |
1001 | 1006 |
1002 // Conditions and branches for MIPSr6. | 1007 // Conditions and branches for MIPSr6. |
1003 void cmp(FPUCondition cond, SecondaryField fmt, | 1008 void cmp(FPUCondition cond, SecondaryField fmt, |
1004 FPURegister fd, FPURegister ft, FPURegister fs); | 1009 FPURegister fd, FPURegister ft, FPURegister fs); |
| 1010 void cmp_s(FPUCondition cond, FPURegister fd, FPURegister fs, FPURegister ft); |
| 1011 void cmp_d(FPUCondition cond, FPURegister fd, FPURegister fs, FPURegister ft); |
1005 | 1012 |
1006 void bc1eqz(int16_t offset, FPURegister ft); | 1013 void bc1eqz(int16_t offset, FPURegister ft); |
1007 void bc1eqz(Label* L, FPURegister ft) { | 1014 void bc1eqz(Label* L, FPURegister ft) { |
1008 bc1eqz(branch_offset(L, false)>>2, ft); | 1015 bc1eqz(branch_offset(L, false)>>2, ft); |
1009 } | 1016 } |
1010 void bc1nez(int16_t offset, FPURegister ft); | 1017 void bc1nez(int16_t offset, FPURegister ft); |
1011 void bc1nez(Label* L, FPURegister ft) { | 1018 void bc1nez(Label* L, FPURegister ft) { |
1012 bc1nez(branch_offset(L, false)>>2, ft); | 1019 bc1nez(branch_offset(L, false)>>2, ft); |
1013 } | 1020 } |
1014 | 1021 |
1015 // Conditions and branches for non MIPSr6. | 1022 // Conditions and branches for non MIPSr6. |
1016 void c(FPUCondition cond, SecondaryField fmt, | 1023 void c(FPUCondition cond, SecondaryField fmt, |
1017 FPURegister ft, FPURegister fs, uint16_t cc = 0); | 1024 FPURegister ft, FPURegister fs, uint16_t cc = 0); |
| 1025 void c_s(FPUCondition cond, FPURegister ft, FPURegister fs, uint16_t cc = 0); |
| 1026 void c_d(FPUCondition cond, FPURegister ft, FPURegister fs, uint16_t cc = 0); |
1018 | 1027 |
1019 void bc1f(int16_t offset, uint16_t cc = 0); | 1028 void bc1f(int16_t offset, uint16_t cc = 0); |
1020 void bc1f(Label* L, uint16_t cc = 0) { | 1029 void bc1f(Label* L, uint16_t cc = 0) { |
1021 bc1f(branch_offset(L, false)>>2, cc); | 1030 bc1f(branch_offset(L, false)>>2, cc); |
1022 } | 1031 } |
1023 void bc1t(int16_t offset, uint16_t cc = 0); | 1032 void bc1t(int16_t offset, uint16_t cc = 0); |
1024 void bc1t(Label* L, uint16_t cc = 0) { | 1033 void bc1t(Label* L, uint16_t cc = 0) { |
1025 bc1t(branch_offset(L, false)>>2, cc); | 1034 bc1t(branch_offset(L, false)>>2, cc); |
1026 } | 1035 } |
1027 void fcmp(FPURegister src1, const double src2, FPUCondition cond); | 1036 void fcmp(FPURegister src1, const double src2, FPUCondition cond); |
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1469 class EnsureSpace BASE_EMBEDDED { | 1478 class EnsureSpace BASE_EMBEDDED { |
1470 public: | 1479 public: |
1471 explicit EnsureSpace(Assembler* assembler) { | 1480 explicit EnsureSpace(Assembler* assembler) { |
1472 assembler->CheckBuffer(); | 1481 assembler->CheckBuffer(); |
1473 } | 1482 } |
1474 }; | 1483 }; |
1475 | 1484 |
1476 } } // namespace v8::internal | 1485 } } // namespace v8::internal |
1477 | 1486 |
1478 #endif // V8_ARM_ASSEMBLER_MIPS_H_ | 1487 #endif // V8_ARM_ASSEMBLER_MIPS_H_ |
OLD | NEW |