Index: src/IceCfg.cpp |
diff --git a/src/IceCfg.cpp b/src/IceCfg.cpp |
index cc779083f7d64156f4803f4e63c30ec461109280..ed962d151f43b11d980ede9898db01912ee843f7 100644 |
--- a/src/IceCfg.cpp |
+++ b/src/IceCfg.cpp |
@@ -65,17 +65,12 @@ bool Cfg::hasComputedFrame() const { return getTarget()->hasComputedFrame(); } |
void Cfg::translate() { |
if (hasError()) |
return; |
- VerboseMask OldVerboseMask = getContext()->getVerbose(); |
const IceString &TimingFocusOn = getContext()->getFlags().TimingFocusOn; |
if (TimingFocusOn == "*" || TimingFocusOn == getFunctionName()) { |
setFocusedTiming(); |
getContext()->resetTimer(GlobalContext::TSK_Default); |
getContext()->setTimerName(GlobalContext::TSK_Default, getFunctionName()); |
} |
- bool VerboseFocus = |
- (getContext()->getFlags().VerboseFocusOn == getFunctionName()); |
- if (VerboseFocus) |
- getContext()->setVerbose(IceV_All); |
TimerMarker T(TimerStack::TT_translate, this); |
dump("Initial CFG"); |
@@ -87,8 +82,6 @@ void Cfg::translate() { |
dump("Final output"); |
if (getFocusedTiming()) |
getContext()->dumpTimers(); |
- if (VerboseFocus) |
- getContext()->setVerbose(OldVerboseMask); |
} |
void Cfg::computePredecessors() { |
@@ -150,9 +143,6 @@ void Cfg::genCode() { |
void Cfg::genFrame() { |
TimerMarker T(TimerStack::TT_genFrame, this); |
getTarget()->addProlog(Entry); |
- // TODO: Consider folding epilog generation into the final |
- // emission/assembly pass to avoid an extra iteration over the node |
- // list. Or keep a separate list of exit nodes. |
for (CfgNode *Node : Nodes) |
if (Node->getHasReturn()) |
getTarget()->addEpilog(Node); |
@@ -323,7 +313,7 @@ void Cfg::emit() { |
IceString MangledName = getContext()->mangleName(getFunctionName()); |
if (Ctx->getFlags().FunctionSections) |
Str << "\t.section\t.text." << MangledName << ",\"ax\",@progbits\n"; |
- if (!getInternal()) { |
+ if (!getInternal() || Ctx->getFlags().DisableInternal) { |
Str << "\t.globl\t" << MangledName << "\n"; |
Str << "\t.type\t" << MangledName << ",@function\n"; |
} |
@@ -347,7 +337,7 @@ void Cfg::dump(const IceString &Message) { |
// Print function name+args |
if (getContext()->isVerbose(IceV_Instructions)) { |
Str << "define "; |
- if (getInternal()) |
+ if (getInternal() && !Ctx->getFlags().DisableInternal) |
Str << "internal "; |
Str << ReturnType << " @" << Ctx->mangleName(getFunctionName()) << "("; |
for (SizeT i = 0; i < Args.size(); ++i) { |