From f58e37f957191a3e41f605628c6169fbb1d4f922 Mon Sep 17 00:00:00 2001 From: Lang Hames Date: Wed, 15 Feb 2012 01:31:10 +0000 Subject: [PATCH] Don't emit live ranges for physregs live-ins that are dead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150553 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/LiveIntervalAnalysis.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp index d27b8e5fd9f..f99f8cfbc93 100644 --- a/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/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.");