diff options
author | Nadav Rotem <nrotem@apple.com> | 2013-06-26 23:43:23 +0000 |
---|---|---|
committer | Nadav Rotem <nrotem@apple.com> | 2013-06-26 23:43:23 +0000 |
commit | 1e1c694dcd934aa63a0b1e27e01293dcfc610f40 (patch) | |
tree | 64c16bccf9b4fba49c1e261730d528e55c101e0b | |
parent | c3cfe53b661533401017e39d22022656fc7c74c5 (diff) | |
download | external_llvm-1e1c694dcd934aa63a0b1e27e01293dcfc610f40.zip external_llvm-1e1c694dcd934aa63a0b1e27e01293dcfc610f40.tar.gz external_llvm-1e1c694dcd934aa63a0b1e27e01293dcfc610f40.tar.bz2 |
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
-rw-r--r-- | lib/Transforms/Vectorize/SLPVectorizer.cpp | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/lib/Transforms/Vectorize/SLPVectorizer.cpp b/lib/Transforms/Vectorize/SLPVectorizer.cpp index 33d1100..3c1dc78 100644 --- a/lib/Transforms/Vectorize/SLPVectorizer.cpp +++ b/lib/Transforms/Vectorize/SLPVectorizer.cpp @@ -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; |