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 1141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1152 bc1f(shifted_branch_offset(L), cc); | 1152 bc1f(shifted_branch_offset(L), cc); |
1153 } | 1153 } |
1154 void bc1t(int16_t offset, uint16_t cc = 0); | 1154 void bc1t(int16_t offset, uint16_t cc = 0); |
1155 inline void bc1t(Label* L, uint16_t cc = 0) { | 1155 inline void bc1t(Label* L, uint16_t cc = 0) { |
1156 bc1t(shifted_branch_offset(L), cc); | 1156 bc1t(shifted_branch_offset(L), cc); |
1157 } | 1157 } |
1158 void fcmp(FPURegister src1, const double src2, FPUCondition cond); | 1158 void fcmp(FPURegister src1, const double src2, FPUCondition cond); |
1159 | 1159 |
1160 // MSA instructions | 1160 // MSA instructions |
1161 void bz_v(MSARegister wt, int16_t offset); | 1161 void bz_v(MSARegister wt, int16_t offset); |
| 1162 inline void bz_v(MSARegister wt, Label* L) { |
| 1163 bz_v(wt, shifted_branch_offset(L)); |
| 1164 } |
1162 void bz_b(MSARegister wt, int16_t offset); | 1165 void bz_b(MSARegister wt, int16_t offset); |
| 1166 inline void bz_b(MSARegister wt, Label* L) { |
| 1167 bz_b(wt, shifted_branch_offset(L)); |
| 1168 } |
1163 void bz_h(MSARegister wt, int16_t offset); | 1169 void bz_h(MSARegister wt, int16_t offset); |
| 1170 inline void bz_h(MSARegister wt, Label* L) { |
| 1171 bz_h(wt, shifted_branch_offset(L)); |
| 1172 } |
1164 void bz_w(MSARegister wt, int16_t offset); | 1173 void bz_w(MSARegister wt, int16_t offset); |
| 1174 inline void bz_w(MSARegister wt, Label* L) { |
| 1175 bz_w(wt, shifted_branch_offset(L)); |
| 1176 } |
1165 void bz_d(MSARegister wt, int16_t offset); | 1177 void bz_d(MSARegister wt, int16_t offset); |
| 1178 inline void bz_d(MSARegister wt, Label* L) { |
| 1179 bz_d(wt, shifted_branch_offset(L)); |
| 1180 } |
1166 void bnz_v(MSARegister wt, int16_t offset); | 1181 void bnz_v(MSARegister wt, int16_t offset); |
| 1182 inline void bnz_v(MSARegister wt, Label* L) { |
| 1183 bnz_v(wt, shifted_branch_offset(L)); |
| 1184 } |
1167 void bnz_b(MSARegister wt, int16_t offset); | 1185 void bnz_b(MSARegister wt, int16_t offset); |
| 1186 inline void bnz_b(MSARegister wt, Label* L) { |
| 1187 bnz_b(wt, shifted_branch_offset(L)); |
| 1188 } |
1168 void bnz_h(MSARegister wt, int16_t offset); | 1189 void bnz_h(MSARegister wt, int16_t offset); |
| 1190 inline void bnz_h(MSARegister wt, Label* L) { |
| 1191 bnz_h(wt, shifted_branch_offset(L)); |
| 1192 } |
1169 void bnz_w(MSARegister wt, int16_t offset); | 1193 void bnz_w(MSARegister wt, int16_t offset); |
| 1194 inline void bnz_w(MSARegister wt, Label* L) { |
| 1195 bnz_w(wt, shifted_branch_offset(L)); |
| 1196 } |
1170 void bnz_d(MSARegister wt, int16_t offset); | 1197 void bnz_d(MSARegister wt, int16_t offset); |
| 1198 inline void bnz_d(MSARegister wt, Label* L) { |
| 1199 bnz_d(wt, shifted_branch_offset(L)); |
| 1200 } |
1171 | 1201 |
1172 void ld_b(MSARegister wd, const MemOperand& rs); | 1202 void ld_b(MSARegister wd, const MemOperand& rs); |
1173 void ld_h(MSARegister wd, const MemOperand& rs); | 1203 void ld_h(MSARegister wd, const MemOperand& rs); |
1174 void ld_w(MSARegister wd, const MemOperand& rs); | 1204 void ld_w(MSARegister wd, const MemOperand& rs); |
1175 void ld_d(MSARegister wd, const MemOperand& rs); | 1205 void ld_d(MSARegister wd, const MemOperand& rs); |
1176 void st_b(MSARegister wd, const MemOperand& rs); | 1206 void st_b(MSARegister wd, const MemOperand& rs); |
1177 void st_h(MSARegister wd, const MemOperand& rs); | 1207 void st_h(MSARegister wd, const MemOperand& rs); |
1178 void st_w(MSARegister wd, const MemOperand& rs); | 1208 void st_w(MSARegister wd, const MemOperand& rs); |
1179 void st_d(MSARegister wd, const MemOperand& rs); | 1209 void st_d(MSARegister wd, const MemOperand& rs); |
1180 | 1210 |
(...skipping 639 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1820 static void instr_at_put(byte* pc, Instr instr) { | 1850 static void instr_at_put(byte* pc, Instr instr) { |
1821 *reinterpret_cast<Instr*>(pc) = instr; | 1851 *reinterpret_cast<Instr*>(pc) = instr; |
1822 } | 1852 } |
1823 Instr instr_at(int pos) { return *reinterpret_cast<Instr*>(buffer_ + pos); } | 1853 Instr instr_at(int pos) { return *reinterpret_cast<Instr*>(buffer_ + pos); } |
1824 void instr_at_put(int pos, Instr instr) { | 1854 void instr_at_put(int pos, Instr instr) { |
1825 *reinterpret_cast<Instr*>(buffer_ + pos) = instr; | 1855 *reinterpret_cast<Instr*>(buffer_ + pos) = instr; |
1826 } | 1856 } |
1827 | 1857 |
1828 // Check if an instruction is a branch of some kind. | 1858 // Check if an instruction is a branch of some kind. |
1829 static bool IsBranch(Instr instr); | 1859 static bool IsBranch(Instr instr); |
| 1860 static bool IsMsaBranch(Instr instr); |
1830 static bool IsBc(Instr instr); | 1861 static bool IsBc(Instr instr); |
1831 static bool IsBzc(Instr instr); | 1862 static bool IsBzc(Instr instr); |
1832 | 1863 |
1833 static bool IsBeq(Instr instr); | 1864 static bool IsBeq(Instr instr); |
1834 static bool IsBne(Instr instr); | 1865 static bool IsBne(Instr instr); |
1835 static bool IsBeqzc(Instr instr); | 1866 static bool IsBeqzc(Instr instr); |
1836 static bool IsBnezc(Instr instr); | 1867 static bool IsBnezc(Instr instr); |
1837 static bool IsBeqc(Instr instr); | 1868 static bool IsBeqc(Instr instr); |
1838 static bool IsBnec(Instr instr); | 1869 static bool IsBnec(Instr instr); |
1839 | 1870 |
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2269 public: | 2300 public: |
2270 explicit EnsureSpace(Assembler* assembler) { | 2301 explicit EnsureSpace(Assembler* assembler) { |
2271 assembler->CheckBuffer(); | 2302 assembler->CheckBuffer(); |
2272 } | 2303 } |
2273 }; | 2304 }; |
2274 | 2305 |
2275 } // namespace internal | 2306 } // namespace internal |
2276 } // namespace v8 | 2307 } // namespace v8 |
2277 | 2308 |
2278 #endif // V8_ARM_ASSEMBLER_MIPS_H_ | 2309 #endif // V8_ARM_ASSEMBLER_MIPS_H_ |
OLD | NEW |