aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/LiveVariables.cpp
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2008-02-20 20:56:45 +0000
committerBill Wendling <isanbard@gmail.com>2008-02-20 20:56:45 +0000
commitc927cc8731724a91733781c816b89d234c265d8c (patch)
tree6e793a87115d920c1202765eebd5cb97a1ba1034 /lib/CodeGen/LiveVariables.cpp
parente18bc08fbc674584fe3a3a0c6b866a5aea201a91 (diff)
downloadexternal_llvm-c927cc8731724a91733781c816b89d234c265d8c.zip
external_llvm-c927cc8731724a91733781c816b89d234c265d8c.tar.gz
external_llvm-c927cc8731724a91733781c816b89d234c265d8c.tar.bz2
Remove one of the fixmes that I put in there. From Evan:
No need to go up more levels. A def of a register also sets its sub-registers (so if PhysRegInfo[SuperReg] is NULL, it means SuperReg's super registers are not previously defined). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47399 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/LiveVariables.cpp')
-rw-r--r--lib/CodeGen/LiveVariables.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp
index 809048e..4b428d6 100644
--- a/lib/CodeGen/LiveVariables.cpp
+++ b/lib/CodeGen/LiveVariables.cpp
@@ -258,8 +258,9 @@ void LiveVariables::HandlePhysRegUse(unsigned Reg, MachineInstr *MI) {
bool HasPrevDef = PhysRegInfo[SuperReg] != NULL;
if (!HasPrevDef)
- // FIXME: This only goes back one level of super-registers. It might miss
- // some.
+ // No need to go up more levels. A def of a register also sets its sub-
+ // registers. So if PhysRegInfo[SuperReg] is NULL, it means SuperReg's
+ // super-registers are not previously defined.
for (const unsigned *SSRegs = RegInfo->getSuperRegisters(SuperReg);
unsigned SSReg = *SSRegs; ++SSRegs)
if (PhysRegInfo[SSReg] != NULL) {