[unroll] Don't check the loop set for whether an instruction is

contained in it each time we try to add it to the worklist, just check
this when pulling it off the worklist. That way we do it at most once
per instruction with the cost of the worklist set we would need to pay
anyways.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229060 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chandler Carruth 2015-02-13 04:30:44 +00:00
parent b9cb5b19d9
commit 2d38576d56

View File

@ -472,8 +472,6 @@ public:
Instruction *UI = dyn_cast<Instruction>(U);
if (!UI)
continue;
if (!L->contains(UI))
continue;
Worklist.insert(UI);
}
}
@ -483,14 +481,14 @@ public:
// its users as well.
while (!Worklist.empty()) {
Instruction *I = Worklist.pop_back_val();
if (!L->contains(I))
continue;
if (!visit(I))
continue;
for (User *U : I->users()) {
Instruction *UI = dyn_cast<Instruction>(U);
if (!UI)
continue;
if (!L->contains(UI))
continue;
Worklist.insert(UI);
}
}