diff options
author | Lang Hames <lhames@gmail.com> | 2012-02-15 01:31:10 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2012-02-15 01:31:10 +0000 |
commit | 84f454ec5c1e1d255428b26d5c7b2d60bbf1787d (patch) | |
tree | 8af28f4a0d837d870f3bd33ab1e1456eae3dda3b | |
parent | 77d205152a2bbbbe10aef16266f3c66c461dc3fd (diff) | |
download | bcm5719-llvm-84f454ec5c1e1d255428b26d5c7b2d60bbf1787d.tar.gz bcm5719-llvm-84f454ec5c1e1d255428b26d5c7b2d60bbf1787d.zip |
Don't emit live ranges for physregs live-ins that are dead.
llvm-svn: 150553
-rw-r--r-- | llvm/lib/CodeGen/LiveIntervalAnalysis.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp b/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp index d27b8e5fd9f..f99f8cfbc93 100644 --- a/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp @@ -529,9 +529,10 @@ void LiveIntervals::handleLiveInRegister(MachineBasicBlock *MBB, if (!SeenDefUse) { if (isAllocatable(interval.reg) || isReserved(interval.reg)) { // This must be an entry block or landing pad - we asserted so on entry - // to the function. For these blocks the interval is dead on entry. + // to the function. For these blocks the interval is dead on entry, so + // we won't emit a live-range for it. DEBUG(dbgs() << " dead"); - end = start.getDeadSlot(); + return; } else { assert(isRegLiveOutOf(MBB, interval.reg) && "Live in reg untouched in block should be be live through."); |