CodeGen: Push the ModuleSlotTracker through MachineOperands

Push `ModuleSlotTracker` through `MachineOperand`s, dropping the time
for `llc -print-machineinstrs` on the testcase in PR23865 from ~13
seconds to ~9 seconds.  Now `SlotTracker::processFunctionMetadata()`
accounts for only 8% of the runtime, which seems reasonable.

llvm-svn: 240845
This commit is contained in:
Duncan P. N. Exon Smith
2015-06-26 22:06:47 +00:00
parent 810551a694
commit f48e982706
6 changed files with 63 additions and 37 deletions

View File

@@ -305,7 +305,7 @@ void MachineBasicBlock::print(raw_ostream &OS, ModuleSlotTracker &MST,
OS << '\t';
if (I->isInsideBundle())
OS << " * ";
I->print(OS);
I->print(OS, MST);
}
// Print the successors of this block according to the CFG.