projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c2feb5c
)
Fix an overly strict assertion. Source register of a copy may not be killed, it may...
author
Evan Cheng
<evan.cheng@apple.com>
Thu, 4 Sep 2008 05:43:55 +0000
(
05:43
+0000)
committer
Evan Cheng
<evan.cheng@apple.com>
Thu, 4 Sep 2008 05:43:55 +0000
(
05:43
+0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55762
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/CodeGen/VirtRegMap.cpp
patch
|
blob
|
history
diff --git
a/lib/CodeGen/VirtRegMap.cpp
b/lib/CodeGen/VirtRegMap.cpp
index 890ecf984c63f53ceb8325ea19efd76f817d82c7..4fd0ad44b05b0839f256dbe9b6cdeec8ffc467a6 100644
(file)
--- a/
lib/CodeGen/VirtRegMap.cpp
+++ b/
lib/CodeGen/VirtRegMap.cpp
@@
-1730,7
+1730,8
@@
void LocalSpiller::RewriteMBB(MachineBasicBlock &MBB, VirtRegMap &VRM) {
SmallVector<unsigned, 2> KillRegs;
InvalidateKills(MI, RegKills, KillOps, &KillRegs);
if (MO.isDead() && !KillRegs.empty()) {
- assert(KillRegs[0] == Dst);
+ // Source register or an implicit super-register use is killed.
+ assert(KillRegs[0] == Dst || TRI->isSubRegister(KillRegs[0], Dst));
// Last def is now dead.
TransferDeadness(&MBB, Dist, Src, RegKills, KillOps);
}