SLP: Dont erase instructions during vectorization because it prevents the outerloops from iterating over the instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185040 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nadav Rotem 2013-06-26 23:43:23 +00:00
parent c3cfe53b66
commit 1e1c694dcd

View File

@ -1258,8 +1258,6 @@ Value *FuncSLP::vectorizeArith(ArrayRef<Value *> Operands) {
for (unsigned i = 0, e = Operands.size(); i != e; ++i) {
Value *S = Builder.CreateExtractElement(Vec, Builder.getInt32(i));
Operands[i]->replaceAllUsesWith(S);
Instruction *I = cast<Instruction>(Operands[i]);
I->eraseFromParent();
}
return Vec;