本文整理汇总了C++中tr::Compilation::dumpMethodTrees方法的典型用法代码示例。如果您正苦于以下问题:C++ Compilation::dumpMethodTrees方法的具体用法?C++ Compilation::dumpMethodTrees怎么用?C++ Compilation::dumpMethodTrees使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类tr::Compilation
的用法示例。
在下文中一共展示了Compilation::dumpMethodTrees方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: mp
void
OMR::CodeGenPhase::performInstructionSelectionPhase(TR::CodeGenerator * cg, TR::CodeGenPhase * phase)
{
TR::Compilation* comp = cg->comp();
phase->reportPhase(InstructionSelectionPhase);
if (comp->getOption(TR_TraceCG) || comp->getOption(TR_TraceTrees) || comp->getOptions()->getTraceCGOption(TR_TraceCGPreInstructionSelection))
comp->dumpMethodTrees("Pre Instruction Selection Trees");
TR::LexicalMemProfiler mp(phase->getName(), comp->phaseMemProfiler());
LexicalTimer pt(phase->getName(), comp->phaseTimer());
cg->doInstructionSelection();
if (comp->getOption(TR_TraceCG) || comp->getOptions()->getTraceCGOption(TR_TraceCGPostInstructionSelection))
comp->getDebug()->dumpMethodInstrs(comp->getOutFile(), "Post Instruction Selection Instructions", false, true);
// check reference counts
#if defined(DEBUG) || defined(PROD_WITH_ASSUMES)
for (int r=0; r<NumRegisterKinds; r++)
{
if (TO_KIND_MASK(r) & cg->getSupportedLiveRegisterKinds())
{
cg->checkForLiveRegisters(cg->getLiveRegisters((TR_RegisterKinds)r));
}
}
#endif
// check interrupt
if (comp->compilationShouldBeInterrupted(AFTER_INSTRUCTION_SELECTION_CONTEXT))
{
comp->failCompilation<TR::CompilationInterrupted>("interrupted after instruction selection");
}
}
示例2:
void
OMR::CodeGenPhase::performLowerTreesPhase(TR::CodeGenerator * cg, TR::CodeGenPhase * phase)
{
TR::Compilation * comp = cg->comp();
phase->reportPhase(LowerTreesPhase);
cg->lowerTrees();
if (comp->getOption(TR_TraceCG))
comp->dumpMethodTrees("Post Lower Trees");
}