summaryrefslogtreecommitdiff
path: root/lib/Transforms/Vectorize/BBVectorize.cpp
diff options
context:
space:
mode:
authorHal Finkel <hfinkel@anl.gov>2013-02-11 23:02:09 +0000
committerHal Finkel <hfinkel@anl.gov>2013-02-11 23:02:09 +0000
commit8f3359a4b396d3f1a7b2726e02f199be74c62e4c (patch)
tree72d4e6d900cacf61d1039bea3b2e09a5059b6e77 /lib/Transforms/Vectorize/BBVectorize.cpp
parent86f18eb0b39804cf9cf1d17cdb58f44d8d846545 (diff)
downloadllvm-8f3359a4b396d3f1a7b2726e02f199be74c62e4c.tar.gz
llvm-8f3359a4b396d3f1a7b2726e02f199be74c62e4c.tar.bz2
llvm-8f3359a4b396d3f1a7b2726e02f199be74c62e4c.tar.xz
BBVectorize: Omit unnecessary entries in PairableInstUsers
This map is queried only for instructions in pairs of pairable instructions; so make sure that only pairs of pairable instructions are added to the map. This gives a 3.5% speedup on the csa.ll test case from PR15222. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174914 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Vectorize/BBVectorize.cpp')
-rw-r--r--lib/Transforms/Vectorize/BBVectorize.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Transforms/Vectorize/BBVectorize.cpp b/lib/Transforms/Vectorize/BBVectorize.cpp
index bf8fca06ff..b14d91dd8e 100644
--- a/lib/Transforms/Vectorize/BBVectorize.cpp
+++ b/lib/Transforms/Vectorize/BBVectorize.cpp
@@ -1390,8 +1390,10 @@ namespace {
(void) trackUsesOfI(Users, WriteSet, I, J);
for (DenseSet<Value *>::iterator U = Users.begin(), E = Users.end();
- U != E; ++U)
+ U != E; ++U) {
+ if (IsInPair.find(*U) == IsInPair.end()) continue;
PairableInstUsers.insert(ValuePair(I, *U));
+ }
}
}