OLD | NEW |
1 //===- subzero/src/IceTargetLoweringMIPS32.h - MIPS32 lowering ---*- C++-*-===// | 1 //===- subzero/src/IceTargetLoweringMIPS32.h - MIPS32 lowering ---*- 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 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
177 auto *Instr = Context.insert<InstMIPS32Mov>(Dest, Src0); | 177 auto *Instr = Context.insert<InstMIPS32Mov>(Dest, Src0); |
178 if (Instr->isMultiDest()) { | 178 if (Instr->isMultiDest()) { |
179 // If Instr is multi-dest, then Dest must be a Variable64On32. We add a | 179 // If Instr is multi-dest, then Dest must be a Variable64On32. We add a |
180 // fake-def for Instr.DestHi here. | 180 // fake-def for Instr.DestHi here. |
181 assert(llvm::isa<Variable64On32>(Dest)); | 181 assert(llvm::isa<Variable64On32>(Dest)); |
182 Context.insert<InstFakeDef>(Instr->getDestHi()); | 182 Context.insert<InstFakeDef>(Instr->getDestHi()); |
183 } | 183 } |
184 } | 184 } |
185 } | 185 } |
186 | 186 |
| 187 void _mfc1(Variable *Dest, Variable *Src) { |
| 188 Context.insert<InstMIPS32Mfc1>(Dest, Src); |
| 189 } |
| 190 |
187 void _mfhi(Variable *Dest, Operand *Src) { | 191 void _mfhi(Variable *Dest, Operand *Src) { |
188 Context.insert<InstMIPS32Mfhi>(Dest, Src); | 192 Context.insert<InstMIPS32Mfhi>(Dest, Src); |
189 } | 193 } |
190 | 194 |
191 void _mflo(Variable *Dest, Operand *Src) { | 195 void _mflo(Variable *Dest, Operand *Src) { |
192 Context.insert<InstMIPS32Mflo>(Dest, Src); | 196 Context.insert<InstMIPS32Mflo>(Dest, Src); |
193 } | 197 } |
194 | 198 |
| 199 void _mtc1(Variable *Dest, Variable *Src) { |
| 200 Context.insert<InstMIPS32Mtc1>(Dest, Src); |
| 201 } |
| 202 |
195 void _mthi(Variable *Dest, Operand *Src) { | 203 void _mthi(Variable *Dest, Operand *Src) { |
196 Context.insert<InstMIPS32Mthi>(Dest, Src); | 204 Context.insert<InstMIPS32Mthi>(Dest, Src); |
197 } | 205 } |
198 | 206 |
199 void _mtlo(Variable *Dest, Operand *Src) { | 207 void _mtlo(Variable *Dest, Operand *Src) { |
200 Context.insert<InstMIPS32Mtlo>(Dest, Src); | 208 Context.insert<InstMIPS32Mtlo>(Dest, Src); |
201 } | 209 } |
202 | 210 |
203 void _mul(Variable *Dest, Variable *Src0, Variable *Src1) { | 211 void _mul(Variable *Dest, Variable *Src0, Variable *Src1) { |
204 Context.insert<InstMIPS32Mul>(Dest, Src0, Src1); | 212 Context.insert<InstMIPS32Mul>(Dest, Src0, Src1); |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
420 explicit TargetHeaderMIPS32(GlobalContext *Ctx); | 428 explicit TargetHeaderMIPS32(GlobalContext *Ctx); |
421 | 429 |
422 private: | 430 private: |
423 ~TargetHeaderMIPS32() = default; | 431 ~TargetHeaderMIPS32() = default; |
424 }; | 432 }; |
425 | 433 |
426 } // end of namespace MIPS32 | 434 } // end of namespace MIPS32 |
427 } // end of namespace Ice | 435 } // end of namespace Ice |
428 | 436 |
429 #endif // SUBZERO_SRC_ICETARGETLOWERINGMIPS32_H | 437 #endif // SUBZERO_SRC_ICETARGETLOWERINGMIPS32_H |
OLD | NEW |