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:
7b466d0
)
Mark dead def as unused.
author
Evan Cheng
<evan.cheng@apple.com>
Fri, 2 Mar 2007 10:43:16 +0000
(10:43 +0000)
committer
Evan Cheng
<evan.cheng@apple.com>
Fri, 2 Mar 2007 10:43:16 +0000
(10:43 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34844
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/CodeGen/RegisterScavenging.cpp
patch
|
blob
|
history
diff --git
a/lib/CodeGen/RegisterScavenging.cpp
b/lib/CodeGen/RegisterScavenging.cpp
index 7efae9ca5c089f816e2ad1fcdee5ea4bb3d3c3b5..c5389d922e2687c11aedf19aaa975b1607901a89 100644
(file)
--- a/
lib/CodeGen/RegisterScavenging.cpp
+++ b/
lib/CodeGen/RegisterScavenging.cpp
@@
-100,14
+100,18
@@
void RegScavenger::forward() {
if (!MO.isReg() || !MO.isDef())
continue;
unsigned Reg = MO.getReg();
+ // If it's dead upon def, then it is now free.
+ if (MO.isDead()) {
+ setUnused(Reg);
+ continue;
+ }
// Skip two-address destination operand.
if (TID->findTiedToSrcOperand(i) != -1) {
assert(isUsed(Reg));
continue;
}
assert(isUnused(Reg) || isReserved(Reg));
- if (!MO.isDead())
- setUsed(Reg);
+ setUsed(Reg);
}
}