OLD | NEW |
1 //===- subzero/src/IceInstMIPS32.h - MIPS32 machine instrs --*- C++ -*-----===// | 1 //===- subzero/src/IceInstMIPS32.h - MIPS32 machine instrs --*- C++ -*-----===// |
2 // | 2 // |
3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 /// | 9 /// |
10 /// \file | 10 /// \file |
(...skipping 1153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1164 void emitSingleDestMultiSource(const Cfg *Func) const; | 1164 void emitSingleDestMultiSource(const Cfg *Func) const; |
1165 void emitSingleDestSingleSource(const Cfg *Func) const; | 1165 void emitSingleDestSingleSource(const Cfg *Func) const; |
1166 | 1166 |
1167 Variable *DestHi = nullptr; | 1167 Variable *DestHi = nullptr; |
1168 }; | 1168 }; |
1169 | 1169 |
1170 // Declare partial template specializations of emit() methods that already have | 1170 // Declare partial template specializations of emit() methods that already have |
1171 // default implementations. Without this, there is the possibility of ODR | 1171 // default implementations. Without this, there is the possibility of ODR |
1172 // violations and link errors. | 1172 // violations and link errors. |
1173 | 1173 |
| 1174 template <> void InstMIPS32Abs_d::emitIAS(const Cfg *Func) const; |
| 1175 template <> void InstMIPS32Abs_s::emitIAS(const Cfg *Func) const; |
| 1176 template <> void InstMIPS32Add_d::emitIAS(const Cfg *Func) const; |
| 1177 template <> void InstMIPS32Add_s::emitIAS(const Cfg *Func) const; |
| 1178 template <> void InstMIPS32Addiu::emitIAS(const Cfg *Func) const; |
| 1179 template <> void InstMIPS32Addu::emitIAS(const Cfg *Func) const; |
| 1180 template <> void InstMIPS32And::emitIAS(const Cfg *Func) const; |
| 1181 template <> void InstMIPS32Andi::emitIAS(const Cfg *Func) const; |
| 1182 template <> void InstMIPS32Cvt_d_l::emitIAS(const Cfg *Func) const; |
| 1183 template <> void InstMIPS32Cvt_d_s::emitIAS(const Cfg *Func) const; |
| 1184 template <> void InstMIPS32Cvt_d_w::emitIAS(const Cfg *Func) const; |
| 1185 template <> void InstMIPS32Cvt_s_d::emitIAS(const Cfg *Func) const; |
| 1186 template <> void InstMIPS32Cvt_s_l::emitIAS(const Cfg *Func) const; |
| 1187 template <> void InstMIPS32Cvt_s_w::emitIAS(const Cfg *Func) const; |
| 1188 template <> void InstMIPS32Div_d::emitIAS(const Cfg *Func) const; |
| 1189 template <> void InstMIPS32Div_s::emitIAS(const Cfg *Func) const; |
| 1190 template <> void InstMIPS32Lui::emit(const Cfg *Func) const; |
| 1191 template <> void InstMIPS32Lw::emitIAS(const Cfg *Func) const; |
| 1192 template <> void InstMIPS32Mfc1::emit(const Cfg *Func) const; |
1174 template <> void InstMIPS32Mflo::emit(const Cfg *Func) const; | 1193 template <> void InstMIPS32Mflo::emit(const Cfg *Func) const; |
1175 template <> void InstMIPS32Mfhi::emit(const Cfg *Func) const; | 1194 template <> void InstMIPS32Mfhi::emit(const Cfg *Func) const; |
| 1195 template <> void InstMIPS32Mov_d::emitIAS(const Cfg *Func) const; |
| 1196 template <> void InstMIPS32Mov_s::emitIAS(const Cfg *Func) const; |
| 1197 template <> void InstMIPS32Movn_d::emitIAS(const Cfg *Func) const; |
| 1198 template <> void InstMIPS32Movn_s::emitIAS(const Cfg *Func) const; |
| 1199 template <> void InstMIPS32Movz_d::emitIAS(const Cfg *Func) const; |
| 1200 template <> void InstMIPS32Movz_s::emitIAS(const Cfg *Func) const; |
| 1201 template <> void InstMIPS32Mtc1::emit(const Cfg *Func) const; |
1176 template <> void InstMIPS32Mtlo::emit(const Cfg *Func) const; | 1202 template <> void InstMIPS32Mtlo::emit(const Cfg *Func) const; |
1177 template <> void InstMIPS32Mthi::emit(const Cfg *Func) const; | 1203 template <> void InstMIPS32Mthi::emit(const Cfg *Func) const; |
| 1204 template <> void InstMIPS32Mul_d::emitIAS(const Cfg *Func) const; |
| 1205 template <> void InstMIPS32Mul_s::emitIAS(const Cfg *Func) const; |
1178 template <> void InstMIPS32Mult::emit(const Cfg *Func) const; | 1206 template <> void InstMIPS32Mult::emit(const Cfg *Func) const; |
1179 template <> void InstMIPS32Multu::emit(const Cfg *Func) const; | 1207 template <> void InstMIPS32Multu::emit(const Cfg *Func) const; |
1180 template <> void InstMIPS32Lui::emit(const Cfg *Func) const; | 1208 template <> void InstMIPS32Or::emitIAS(const Cfg *Func) const; |
1181 | 1209 template <> void InstMIPS32Ori::emitIAS(const Cfg *Func) const; |
1182 template <> void InstMIPS32Addiu::emitIAS(const Cfg *Func) const; | 1210 template <> void InstMIPS32Sll::emitIAS(const Cfg *Func) const; |
| 1211 template <> void InstMIPS32Slt::emitIAS(const Cfg *Func) const; |
1183 template <> void InstMIPS32Slti::emitIAS(const Cfg *Func) const; | 1212 template <> void InstMIPS32Slti::emitIAS(const Cfg *Func) const; |
1184 template <> void InstMIPS32Sltiu::emitIAS(const Cfg *Func) const; | 1213 template <> void InstMIPS32Sltiu::emitIAS(const Cfg *Func) const; |
1185 template <> void InstMIPS32And::emitIAS(const Cfg *Func) const; | 1214 template <> void InstMIPS32Sltu::emitIAS(const Cfg *Func) const; |
1186 template <> void InstMIPS32Andi::emitIAS(const Cfg *Func) const; | 1215 template <> void InstMIPS32Sqrt_d::emitIAS(const Cfg *Func) const; |
1187 template <> void InstMIPS32Or::emitIAS(const Cfg *Func) const; | 1216 template <> void InstMIPS32Sqrt_s::emitIAS(const Cfg *Func) const; |
1188 template <> void InstMIPS32Ori::emitIAS(const Cfg *Func) const; | 1217 template <> void InstMIPS32Sw::emitIAS(const Cfg *Func) const; |
| 1218 template <> void InstMIPS32Sra::emitIAS(const Cfg *Func) const; |
| 1219 template <> void InstMIPS32Srl::emitIAS(const Cfg *Func) const; |
| 1220 template <> void InstMIPS32Sub_d::emitIAS(const Cfg *Func) const; |
| 1221 template <> void InstMIPS32Sub_s::emitIAS(const Cfg *Func) const; |
| 1222 template <> void InstMIPS32Trunc_l_d::emitIAS(const Cfg *Func) const; |
| 1223 template <> void InstMIPS32Trunc_l_s::emitIAS(const Cfg *Func) const; |
| 1224 template <> void InstMIPS32Trunc_w_d::emitIAS(const Cfg *Func) const; |
| 1225 template <> void InstMIPS32Trunc_w_s::emitIAS(const Cfg *Func) const; |
1189 template <> void InstMIPS32Xor::emitIAS(const Cfg *Func) const; | 1226 template <> void InstMIPS32Xor::emitIAS(const Cfg *Func) const; |
1190 template <> void InstMIPS32Xori::emitIAS(const Cfg *Func) const; | 1227 template <> void InstMIPS32Xori::emitIAS(const Cfg *Func) const; |
1191 template <> void InstMIPS32Sll::emitIAS(const Cfg *Func) const; | |
1192 template <> void InstMIPS32Srl::emitIAS(const Cfg *Func) const; | |
1193 template <> void InstMIPS32Sra::emitIAS(const Cfg *Func) const; | |
1194 template <> void InstMIPS32Addu::emitIAS(const Cfg *Func) const; | |
1195 template <> void InstMIPS32Slt::emitIAS(const Cfg *Func) const; | |
1196 template <> void InstMIPS32Sltu::emitIAS(const Cfg *Func) const; | |
1197 template <> void InstMIPS32Sw::emitIAS(const Cfg *Func) const; | |
1198 template <> void InstMIPS32Lw::emitIAS(const Cfg *Func) const; | |
1199 | 1228 |
1200 } // end of namespace MIPS32 | 1229 } // end of namespace MIPS32 |
1201 } // end of namespace Ice | 1230 } // end of namespace Ice |
1202 | 1231 |
1203 #endif // SUBZERO_SRC_ICEINSTMIPS32_H | 1232 #endif // SUBZERO_SRC_ICEINSTMIPS32_H |
OLD | NEW |