// Now reset the use information for the sub-registers.
for (const unsigned *SubRegs = RegInfo->getSubRegisters(Reg);
unsigned SubReg = *SubRegs; ++SubRegs) {
- // FIXME: Should we do: "PhysRegPartUse[SubReg] = NULL;" here?
+ PhysRegPartUse[SubReg] = NULL;
PhysRegInfo[SubReg] = MI;
PhysRegUsed[SubReg] = true;
}
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) {