summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms
diff options
context:
space:
mode:
authorMehdi Amini <mehdi.amini@apple.com>2015-10-23 01:04:45 +0000
committerMehdi Amini <mehdi.amini@apple.com>2015-10-23 01:04:45 +0000
commitd42ae865b89461bbccdeefbba520c9c1890b3a2d (patch)
tree198e7445a64c9122dca8cb35c3726db14f602cd7 /llvm/lib/Transforms
parenta96a8c4c08a3c48db1790d262bae1948e79baa35 (diff)
downloadbcm5719-llvm-d42ae865b89461bbccdeefbba520c9c1890b3a2d.tar.gz
bcm5719-llvm-d42ae865b89461bbccdeefbba520c9c1890b3a2d.zip
SLPVectorizer: AllSameOpcode* starts "true" only for instructions
r251085 wasn't as NFC as intended... From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 251087
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r--llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
index 0930d580363..57b09caa5a4 100644
--- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
@@ -2002,9 +2002,6 @@ void BoUpSLP::reorderInputsAccordingToOpcode(ArrayRef<Value *> VL,
SmallVector<Value *, 16> OrigLeft, OrigRight;
- bool AllSameOpcodeLeft = true;
- bool AllSameOpcodeRight = true;
-
if (VL.size()) {
// Peel the first iteration out of the loop since there's nothing
// interesting to do anyway and it simplifies the checks
@@ -2019,6 +2016,10 @@ void BoUpSLP::reorderInputsAccordingToOpcode(ArrayRef<Value *> VL,
Right.push_back(VRight);
}
+ // Keep track if we have instructions with all the same opcode on one side.
+ bool AllSameOpcodeLeft = isa<Instruction>(Left[0]);
+ bool AllSameOpcodeRight = isa<Instruction>(Right[0]);
+
for (unsigned i = 1, e = VL.size(); i != e; ++i) {
Instruction *I = cast<Instruction>(VL[i]);
OpenPOWER on IntegriCloud