OLD | NEW |
1 // | 1 // |
2 // The Subzero Code Generator | 2 // The Subzero Code Generator |
3 // | 3 // |
4 // This file is distributed under the University of Illinois Open Source | 4 // This file is distributed under the University of Illinois Open Source |
5 // License. See LICENSE.TXT for details. | 5 // License. See LICENSE.TXT for details. |
6 // | 6 // |
7 //===----------------------------------------------------------------------===// | 7 //===----------------------------------------------------------------------===// |
8 /// | 8 /// |
9 /// \file | 9 /// \file |
10 /// \brief Implements the TargetLoweringMIPS32 class, which consists almost | 10 /// \brief Implements the TargetLoweringMIPS32 class, which consists almost |
(...skipping 3178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3189 formAddressingMode(Dest->getType(), Func, Instr, Addr)) { | 3189 formAddressingMode(Dest->getType(), Func, Instr, Addr)) { |
3190 Instr->setDeleted(); | 3190 Instr->setDeleted(); |
3191 Context.insert<InstLoad>(Dest, Mem); | 3191 Context.insert<InstLoad>(Dest, Mem); |
3192 } | 3192 } |
3193 } | 3193 } |
3194 | 3194 |
3195 void TargetMIPS32::randomlyInsertNop(float Probability, | 3195 void TargetMIPS32::randomlyInsertNop(float Probability, |
3196 RandomNumberGenerator &RNG) { | 3196 RandomNumberGenerator &RNG) { |
3197 RandomNumberGeneratorWrapper RNGW(RNG); | 3197 RandomNumberGeneratorWrapper RNGW(RNG); |
3198 if (RNGW.getTrueWithProbability(Probability)) { | 3198 if (RNGW.getTrueWithProbability(Probability)) { |
3199 UnimplementedError(getFlags()); | 3199 _nop(); |
3200 } | 3200 } |
3201 } | 3201 } |
3202 | 3202 |
3203 void TargetMIPS32::lowerPhi(const InstPhi * /*Instr*/) { | 3203 void TargetMIPS32::lowerPhi(const InstPhi * /*Instr*/) { |
3204 Func->setError("Phi found in regular instruction list"); | 3204 Func->setError("Phi found in regular instruction list"); |
3205 } | 3205 } |
3206 | 3206 |
3207 void TargetMIPS32::lowerRet(const InstRet *Instr) { | 3207 void TargetMIPS32::lowerRet(const InstRet *Instr) { |
3208 Variable *Reg = nullptr; | 3208 Variable *Reg = nullptr; |
3209 if (Instr->hasRetValue()) { | 3209 if (Instr->hasRetValue()) { |
(...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3667 Str << "\t.set\t" | 3667 Str << "\t.set\t" |
3668 << "nomips16\n"; | 3668 << "nomips16\n"; |
3669 } | 3669 } |
3670 | 3670 |
3671 SmallBitVector TargetMIPS32::TypeToRegisterSet[RCMIPS32_NUM]; | 3671 SmallBitVector TargetMIPS32::TypeToRegisterSet[RCMIPS32_NUM]; |
3672 SmallBitVector TargetMIPS32::TypeToRegisterSetUnfiltered[RCMIPS32_NUM]; | 3672 SmallBitVector TargetMIPS32::TypeToRegisterSetUnfiltered[RCMIPS32_NUM]; |
3673 SmallBitVector TargetMIPS32::RegisterAliases[RegMIPS32::Reg_NUM]; | 3673 SmallBitVector TargetMIPS32::RegisterAliases[RegMIPS32::Reg_NUM]; |
3674 | 3674 |
3675 } // end of namespace MIPS32 | 3675 } // end of namespace MIPS32 |
3676 } // end of namespace Ice | 3676 } // end of namespace Ice |
OLD | NEW |