Index: src/IceTargetLoweringMIPS32.cpp |
diff --git a/src/IceTargetLoweringMIPS32.cpp b/src/IceTargetLoweringMIPS32.cpp |
index 5f1f8e62213ffbf40677b1291c1883b1ec8a7be7..de8afbfd8058662aca6718b4cac57052fd770b75 100644 |
--- a/src/IceTargetLoweringMIPS32.cpp |
+++ b/src/IceTargetLoweringMIPS32.cpp |
@@ -141,7 +141,7 @@ void TargetMIPS32::translateO2() { |
Func->processAllocas(SortAndCombineAllocas); |
Func->dump("After Alloca processing"); |
- if (!Ctx->getFlags().getEnablePhiEdgeSplit()) { |
+ if (!getFlags().getEnablePhiEdgeSplit()) { |
// Lower Phi instructions. |
Func->placePhiLoads(); |
if (Func->hasError()) |
@@ -204,7 +204,7 @@ void TargetMIPS32::translateO2() { |
return; |
Func->dump("After linear scan regalloc"); |
- if (Ctx->getFlags().getEnablePhiEdgeSplit()) { |
+ if (getFlags().getEnablePhiEdgeSplit()) { |
Func->advancedPhiLowering(); |
Func->dump("After advanced Phi lowering"); |
} |
@@ -226,7 +226,7 @@ void TargetMIPS32::translateO2() { |
Func->dump("After branch optimization"); |
// Nop insertion |
- if (Ctx->getFlags().getShouldDoNopInsertion()) { |
+ if (getFlags().getShouldDoNopInsertion()) { |
Func->doNopInsertion(); |
} |
} |
@@ -271,7 +271,7 @@ void TargetMIPS32::translateOm1() { |
Func->dump("After stack frame mapping"); |
// Nop insertion |
- if (Ctx->getFlags().getShouldDoNopInsertion()) { |
+ if (getFlags().getShouldDoNopInsertion()) { |
Func->doNopInsertion(); |
} |
} |
@@ -279,7 +279,7 @@ void TargetMIPS32::translateOm1() { |
bool TargetMIPS32::doBranchOpt(Inst *Instr, const CfgNode *NextNode) { |
(void)Instr; |
(void)NextNode; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
return false; |
} |
@@ -328,8 +328,9 @@ Variable *TargetMIPS32::getPhysicalRegister(RegNumT RegNum, Type Ty) { |
void TargetMIPS32::emitJumpTable(const Cfg *Func, |
const InstJumpTable *JumpTable) const { |
+ (void)Func; |
(void)JumpTable; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
/// Provide a trivial wrapper to legalize() for this common usage. |
@@ -354,7 +355,7 @@ Operand *TargetMIPS32::legalizeUndef(Operand *From, RegNumT RegNum) { |
// then the result should be split and the lo and hi components will |
// need to go in uninitialized registers. |
if (isVectorType(Ty)) |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
return Ctx->getConstantZero(Ty); |
} |
return From; |
@@ -385,7 +386,7 @@ void TargetMIPS32::emitVariable(const Variable *Var) const { |
Str << "($" << getRegName(getFrameOrStackReg(), FrameSPTy); |
Str << ")"; |
} |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetMIPS32::lowerArguments() { |
@@ -405,11 +406,11 @@ void TargetMIPS32::lowerArguments() { |
Type Ty = Arg->getType(); |
// TODO(rkotler): handle float/vector types. |
if (isVectorType(Ty)) { |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
continue; |
} |
if (isFloatingType(Ty)) { |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
continue; |
} |
if (Ty == IceType_i64) { |
@@ -466,13 +467,13 @@ Type TargetMIPS32::stackSlotType() { return IceType_i32; } |
void TargetMIPS32::addProlog(CfgNode *Node) { |
(void)Node; |
return; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetMIPS32::addEpilog(CfgNode *Node) { |
(void)Node; |
return; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
Operand *TargetMIPS32::loOperand(Operand *Operand) { |
@@ -1053,7 +1054,7 @@ void TargetMIPS32::lowerIntrinsicCall(const InstIntrinsicCall *Instr) { |
return; |
} |
case Intrinsics::NaClReadTP: { |
- if (Ctx->getFlags().getUseSandboxing()) { |
+ if (getFlags().getUseSandboxing()) { |
UnimplementedLoweringError(this, Instr); |
} else { |
InstCall *Call = |
@@ -1095,15 +1096,13 @@ void TargetMIPS32::lowerLoad(const InstLoad *Instr) { |
UnimplementedLoweringError(this, Instr); |
} |
-void TargetMIPS32::doAddressOptLoad() { |
- UnimplementedError(Func->getContext()->getFlags()); |
-} |
+void TargetMIPS32::doAddressOptLoad() { UnimplementedError(getFlags()); } |
void TargetMIPS32::randomlyInsertNop(float Probability, |
RandomNumberGenerator &RNG) { |
RandomNumberGeneratorWrapper RNGW(RNG); |
if (RNGW.getTrueWithProbability(Probability)) { |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
} |
@@ -1150,9 +1149,7 @@ void TargetMIPS32::lowerStore(const InstStore *Instr) { |
UnimplementedLoweringError(this, Instr); |
} |
-void TargetMIPS32::doAddressOptStore() { |
- UnimplementedError(Func->getContext()->getFlags()); |
-} |
+void TargetMIPS32::doAddressOptStore() { UnimplementedError(getFlags()); } |
void TargetMIPS32::lowerSwitch(const InstSwitch *Instr) { |
UnimplementedLoweringError(this, Instr); |
@@ -1170,11 +1167,11 @@ void TargetMIPS32::prelowerPhis() { |
} |
void TargetMIPS32::postLower() { |
- if (Ctx->getFlags().getOptLevel() == Opt_m1) |
+ if (getFlags().getOptLevel() == Opt_m1) |
return; |
// TODO(rkotler): Find two-address non-SSA instructions where Dest==Src0, |
// and set the IsDestRedefined flag to keep liveness analysis consistent. |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetMIPS32::makeRandomRegisterPermutation( |
@@ -1183,7 +1180,7 @@ void TargetMIPS32::makeRandomRegisterPermutation( |
(void)Permutation; |
(void)ExcludeRegisters; |
(void)Salt; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
/* TODO(jvoung): avoid duplicate symbols with multiple targets. |
@@ -1201,8 +1198,8 @@ TargetDataMIPS32::TargetDataMIPS32(GlobalContext *Ctx) |
void TargetDataMIPS32::lowerGlobals(const VariableDeclarationList &Vars, |
const std::string &SectionSuffix) { |
- const bool IsPIC = Ctx->getFlags().getUseNonsfi(); |
- switch (Ctx->getFlags().getOutFileType()) { |
+ const bool IsPIC = getFlags().getUseNonsfi(); |
+ switch (getFlags().getOutFileType()) { |
case FT_Elf: { |
ELFObjectWriter *Writer = Ctx->getObjectWriter(); |
Writer->writeDataSection(Vars, llvm::ELF::R_MIPS_GLOB_DAT, SectionSuffix, |
@@ -1210,7 +1207,7 @@ void TargetDataMIPS32::lowerGlobals(const VariableDeclarationList &Vars, |
} break; |
case FT_Asm: |
case FT_Iasm: { |
- const std::string TranslateOnly = Ctx->getFlags().getTranslateOnly(); |
+ const std::string TranslateOnly = getFlags().getTranslateOnly(); |
OstreamLocker L(Ctx); |
for (const VariableDeclaration *Var : Vars) { |
if (GlobalContext::matchSymbolName(Var->getName(), TranslateOnly)) { |
@@ -1222,15 +1219,15 @@ void TargetDataMIPS32::lowerGlobals(const VariableDeclarationList &Vars, |
} |
void TargetDataMIPS32::lowerConstants() { |
- if (Ctx->getFlags().getDisableTranslation()) |
+ if (getFlags().getDisableTranslation()) |
return; |
- UnimplementedError(Ctx->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetDataMIPS32::lowerJumpTables() { |
- if (Ctx->getFlags().getDisableTranslation()) |
+ if (getFlags().getDisableTranslation()) |
return; |
- UnimplementedError(Ctx->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
// Helper for legalize() to emit the right code to lower an operand to a |
@@ -1239,7 +1236,7 @@ Variable *TargetMIPS32::copyToReg(Operand *Src, RegNumT RegNum) { |
Type Ty = Src->getType(); |
Variable *Reg = makeReg(Ty, RegNum); |
if (isVectorType(Ty) || isFloatingType(Ty)) { |
- UnimplementedError(Ctx->getFlags()); |
+ UnimplementedError(getFlags()); |
} else { |
// Mov's Src operand can really only be the flexible second operand type |
// or a register. Users should guarantee that. |