mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
Added -precompute-phys-liveness for testing LiveIntervals updates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184573 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
03dca5e4b6
commit
c6bae79adb
@ -52,6 +52,14 @@ INITIALIZE_PASS_DEPENDENCY(SlotIndexes)
|
||||
INITIALIZE_PASS_END(LiveIntervals, "liveintervals",
|
||||
"Live Interval Analysis", false, false)
|
||||
|
||||
#ifndef NDEBUG
|
||||
static cl::opt<bool> EnablePrecomputePhysRegs(
|
||||
"precompute-phys-liveness", cl::Hidden,
|
||||
cl::desc("Eagerly compute live intervals for all physreg units."));
|
||||
#else
|
||||
static bool EnablePrecomputePhysRegs = false;
|
||||
#endif // NDEBUG
|
||||
|
||||
void LiveIntervals::getAnalysisUsage(AnalysisUsage &AU) const {
|
||||
AU.setPreservesCFG();
|
||||
AU.addRequired<AliasAnalysis>();
|
||||
@ -116,6 +124,12 @@ bool LiveIntervals::runOnMachineFunction(MachineFunction &fn) {
|
||||
computeRegMasks();
|
||||
computeLiveInRegUnits();
|
||||
|
||||
if (EnablePrecomputePhysRegs) {
|
||||
// For stress testing, precompute live ranges of all physical register
|
||||
// units, including reserved registers.
|
||||
for (unsigned i = 0, e = TRI->getNumRegUnits(); i != e; ++i)
|
||||
getRegUnit(i);
|
||||
}
|
||||
DEBUG(dump());
|
||||
return true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user