diff options
author | Matthew Simpson <mssimpso@codeaurora.org> | 2016-08-20 14:10:06 +0000 |
---|---|---|
committer | Matthew Simpson <mssimpso@codeaurora.org> | 2016-08-20 14:10:06 +0000 |
commit | 2429656aa906e2e917569067e5d518427e595956 (patch) | |
tree | 7b56700f7d1ec45a418c7e8e96d5c6993a5f1e88 /llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | |
parent | 21483f56366aec1ed5abd2961601680a77ac3b12 (diff) | |
download | bcm5719-llvm-2429656aa906e2e917569067e5d518427e595956.tar.gz bcm5719-llvm-2429656aa906e2e917569067e5d518427e595956.zip |
[SLP] Add command line option for minimum tree size (NFC)
llvm-svn: 279369
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp')
-rw-r--r-- | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp index 83d1aff07fe..e131c304032 100644 --- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp +++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp @@ -86,6 +86,10 @@ static cl::opt<unsigned> RecursionMaxDepth( "slp-recursion-max-depth", cl::init(12), cl::Hidden, cl::desc("Limit the recursion depth when building a vectorizable tree")); +static cl::opt<unsigned> MinTreeSize( + "slp-min-tree-size", cl::init(3), cl::Hidden, + cl::desc("Only vectorize small trees if they are fully vectorizable")); + // Limit the number of alias checks. The limit is chosen so that // it has no negative effect on the llvm benchmarks. static const unsigned AliasedCheckLimit = 10; @@ -1871,7 +1875,7 @@ int BoUpSLP::getTreeCost() { VectorizableTree.size() << ".\n"); // We only vectorize tiny trees if it is fully vectorizable. - if (VectorizableTree.size() < 3 && !isFullyVectorizableTinyTree()) { + if (VectorizableTree.size() < MinTreeSize && !isFullyVectorizableTinyTree()) { if (VectorizableTree.empty()) { assert(!ExternalUses.size() && "We should not have any external users"); } |