Index: src/IceTargetLoweringARM32.cpp |
diff --git a/src/IceTargetLoweringARM32.cpp b/src/IceTargetLoweringARM32.cpp |
index d3313e5911f4cd04222071fd7d3dbbb380aa2c46..0f626e6da6bb431bf3c9ce1204ec1e6433e2351a 100644 |
--- a/src/IceTargetLoweringARM32.cpp |
+++ b/src/IceTargetLoweringARM32.cpp |
@@ -52,7 +52,7 @@ createTargetHeaderLowering(::Ice::GlobalContext *Ctx) { |
void staticInit(::Ice::GlobalContext *Ctx) { |
::Ice::ARM32::TargetARM32::staticInit(Ctx); |
- if (Ctx->getFlags().getUseNonsfi()) { |
+ if (Ice::getFlags().getUseNonsfi()) { |
// In nonsfi, we need to reference the _GLOBAL_OFFSET_TABLE_ for accessing |
// globals. The GOT is an external symbol (i.e., it is not defined in the |
// pexe) so we need to register it as such so that ELF emission won't barf |
@@ -300,7 +300,7 @@ const char *getRegClassName(RegClass C) { |
TargetARM32::TargetARM32(Cfg *Func) |
: TargetLowering(Func), NeedSandboxing(SandboxingType == ST_NaCl), |
- CPUFeatures(Func->getContext()->getFlags()) {} |
+ CPUFeatures(getFlags()) {} |
void TargetARM32::staticInit(GlobalContext *Ctx) { |
RegNumT::setLimit(RegARM32::Reg_NUM); |
@@ -1041,7 +1041,7 @@ void TargetARM32::translateO2() { |
Func->processAllocas(SortAndCombineAllocas); |
Func->dump("After Alloca processing"); |
- if (!Ctx->getFlags().getEnablePhiEdgeSplit()) { |
+ if (!getFlags().getEnablePhiEdgeSplit()) { |
// Lower Phi instructions. |
Func->placePhiLoads(); |
if (Func->hasError()) |
@@ -1109,7 +1109,7 @@ void TargetARM32::translateO2() { |
copyRegAllocFromInfWeightVariable64On32(Func->getVariables()); |
Func->dump("After linear scan regalloc"); |
- if (Ctx->getFlags().getEnablePhiEdgeSplit()) { |
+ if (getFlags().getEnablePhiEdgeSplit()) { |
Func->advancedPhiLowering(); |
Func->dump("After advanced Phi lowering"); |
} |
@@ -1138,7 +1138,7 @@ void TargetARM32::translateO2() { |
Func->dump("After branch optimization"); |
// Nop insertion |
- if (Ctx->getFlags().getShouldDoNopInsertion()) { |
+ if (getFlags().getShouldDoNopInsertion()) { |
Func->doNopInsertion(); |
} |
} |
@@ -1200,7 +1200,7 @@ void TargetARM32::translateOm1() { |
Func->dump("After postLowerLegalization"); |
// Nop insertion |
- if (Ctx->getFlags().getShouldDoNopInsertion()) { |
+ if (getFlags().getShouldDoNopInsertion()) { |
Func->doNopInsertion(); |
} |
} |
@@ -1256,8 +1256,9 @@ Variable *TargetARM32::getPhysicalRegister(RegNumT RegNum, Type Ty) { |
void TargetARM32::emitJumpTable(const Cfg *Func, |
const InstJumpTable *JumpTable) const { |
+ (void)Func; |
(void)JumpTable; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetARM32::emitVariable(const Variable *Var) const { |
@@ -1767,7 +1768,7 @@ void TargetARM32::addEpilog(CfgNode *Node) { |
if (!PreservedSRegs.empty()) |
_pop(PreservedSRegs); |
- if (!Ctx->getFlags().getUseSandboxing()) |
+ if (!getFlags().getUseSandboxing()) |
return; |
// Change the original ret instruction into a sandboxed return sequence. |
@@ -2255,7 +2256,7 @@ void TargetARM32::lowerAlloca(const InstAlloca *Instr) { |
const uint32_t Alignment = |
std::max(AlignmentParam, ARM32_STACK_ALIGNMENT_BYTES); |
const bool OverAligned = Alignment > ARM32_STACK_ALIGNMENT_BYTES; |
- const bool OptM1 = Ctx->getFlags().getOptLevel() == Opt_m1; |
+ const bool OptM1 = getFlags().getOptLevel() == Opt_m1; |
const bool AllocaWithKnownOffset = Instr->getKnownFrameOffset(); |
const bool UseFramePointer = |
hasFramePointer() || OverAligned || !AllocaWithKnownOffset || OptM1; |
@@ -3356,7 +3357,7 @@ void TargetARM32::lowerArithmetic(const InstArithmetic *Instr) { |
return; |
} |
case InstArithmetic::Mul: { |
- const bool OptM1 = Ctx->getFlags().getOptLevel() == Opt_m1; |
+ const bool OptM1 = getFlags().getOptLevel() == Opt_m1; |
if (!OptM1 && Srcs.hasConstOperand()) { |
constexpr std::size_t MaxShifts = 4; |
std::array<StrengthReduction::AggregationElement, MaxShifts> Shifts; |
@@ -6135,7 +6136,7 @@ void TargetARM32::alignRegisterPow2(Variable *Reg, uint32_t Align, |
} |
void TargetARM32::postLower() { |
- if (Ctx->getFlags().getOptLevel() == Opt_m1) |
+ if (getFlags().getOptLevel() == Opt_m1) |
return; |
markRedefinitions(); |
Context.availabilityUpdate(); |
@@ -6147,7 +6148,7 @@ void TargetARM32::makeRandomRegisterPermutation( |
(void)Permutation; |
(void)ExcludeRegisters; |
(void)Salt; |
- UnimplementedError(Func->getContext()->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetARM32::emit(const ConstantInteger32 *C) const { |
@@ -6163,12 +6164,12 @@ void TargetARM32::emit(const ConstantInteger64 *) const { |
void TargetARM32::emit(const ConstantFloat *C) const { |
(void)C; |
- UnimplementedError(Ctx->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetARM32::emit(const ConstantDouble *C) const { |
(void)C; |
- UnimplementedError(Ctx->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
void TargetARM32::emit(const ConstantUndef *) const { |
@@ -6721,8 +6722,8 @@ TargetDataARM32::TargetDataARM32(GlobalContext *Ctx) |
void TargetDataARM32::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_ARM_ABS32, SectionSuffix, |
@@ -6730,7 +6731,7 @@ void TargetDataARM32::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 _(Ctx); |
for (const VariableDeclaration *Var : Vars) { |
if (GlobalContext::matchSymbolName(Var->getName(), TranslateOnly)) { |
@@ -6810,9 +6811,9 @@ template <typename T> void emitConstantPool(GlobalContext *Ctx) { |
<< "\n" |
<< "\t.align\t" << Align << "\n"; |
- if (Ctx->getFlags().getReorderPooledConstants()) { |
+ if (getFlags().getReorderPooledConstants()) { |
// TODO(jpp): add constant pooling. |
- UnimplementedError(Ctx->getFlags()); |
+ UnimplementedError(getFlags()); |
} |
for (Constant *C : Pool) { |
@@ -6826,9 +6827,9 @@ template <typename T> void emitConstantPool(GlobalContext *Ctx) { |
} // end of anonymous namespace |
void TargetDataARM32::lowerConstants() { |
- if (Ctx->getFlags().getDisableTranslation()) |
+ if (getFlags().getDisableTranslation()) |
return; |
- switch (Ctx->getFlags().getOutFileType()) { |
+ switch (getFlags().getOutFileType()) { |
case FT_Elf: { |
ELFObjectWriter *Writer = Ctx->getObjectWriter(); |
Writer->writeConstantPool<ConstantFloat>(IceType_f32); |
@@ -6845,9 +6846,9 @@ void TargetDataARM32::lowerConstants() { |
} |
void TargetDataARM32::lowerJumpTables() { |
- if (Ctx->getFlags().getDisableTranslation()) |
+ if (getFlags().getDisableTranslation()) |
return; |
- switch (Ctx->getFlags().getOutFileType()) { |
+ switch (getFlags().getOutFileType()) { |
case FT_Elf: |
if (!Ctx->getJumpTables().empty()) { |
llvm::report_fatal_error("ARM32 does not support jump tables yet."); |
@@ -6864,7 +6865,7 @@ void TargetDataARM32::lowerJumpTables() { |
} |
TargetHeaderARM32::TargetHeaderARM32(GlobalContext *Ctx) |
- : TargetHeaderLowering(Ctx), CPUFeatures(Ctx->getFlags()) {} |
+ : TargetHeaderLowering(Ctx), CPUFeatures(getFlags()) {} |
void TargetHeaderARM32::lower() { |
OstreamLocker _(Ctx); |