Add Loop contains utility methods for testing whether a loop

contains another loop, or an instruction. The loop form is
substantially more efficient on large loops than the typical
code it replaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91654 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2009-12-18 01:24:09 +00:00
parent 3ca735450d
commit 92329c7fbe
12 changed files with 53 additions and 37 deletions

View File

@@ -322,7 +322,7 @@ bool MachineLICM::IsLoopInvariantInst(MachineInstr &I) {
// If the loop contains the definition of an operand, then the instruction
// isn't loop invariant.
if (CurLoop->contains(RegInfo->getVRegDef(Reg)->getParent()))
if (CurLoop->contains(RegInfo->getVRegDef(Reg)))
return false;
}