CodeGen: Push the ModuleSlotTracker through MachineOperands
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 26 Jun 2015 22:06:47 +0000 (22:06 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 26 Jun 2015 22:06:47 +0000 (22:06 +0000)
commita08efbfc8e56aece3aa55dd02b4d78bdc3aa1620
treea99f2126810393b1ae0d3f1c1791c98fa79defdd
parent982139fde285e9531d74cfb7a71476b6fef653d4
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@240845 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/MachineInstr.h
include/llvm/CodeGen/MachineMemOperand.h
include/llvm/CodeGen/MachineOperand.h
include/llvm/CodeGen/PseudoSourceValue.h
lib/CodeGen/MachineBasicBlock.cpp
lib/CodeGen/MachineInstr.cpp