aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-04-27 17:36:47 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-04-27 17:36:47 +0000
commitd521bc983b32da71b85d42dd30da87079afa5728 (patch)
tree6e7db4ba66bab69bb8ce8dc774a54618d21f5563 /lib/CodeGen
parent27e4666c20650f2b10d93b98b7a0625a363df9df (diff)
downloadexternal_llvm-d521bc983b32da71b85d42dd30da87079afa5728.zip
external_llvm-d521bc983b32da71b85d42dd30da87079afa5728.tar.gz
external_llvm-d521bc983b32da71b85d42dd30da87079afa5728.tar.bz2
Fix PR4056. It's possible a physical register def is dead if its implicit use is deleted by two-address pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70213 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen')
-rw-r--r--lib/CodeGen/LiveIntervalAnalysis.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp
index 6691c2e..7ef6abc 100644
--- a/lib/CodeGen/LiveIntervalAnalysis.cpp
+++ b/lib/CodeGen/LiveIntervalAnalysis.cpp
@@ -627,8 +627,8 @@ void LiveIntervals::handlePhysicalRegisterDef(MachineBasicBlock *MBB,
// The only case we should have a dead physreg here without a killing or
// instruction where we know it's dead is if it is live-in to the function
- // and never used.
- assert(!CopyMI && "physreg was not killed in defining block!");
+ // and never used. Another possible case is the implicit use of the
+ // physical register has been deleted by two-address pass.
end = start + 1;
exit: