diff options
author | Arnold Schwaighofer <aschwaighofer@apple.com> | 2014-02-02 03:12:34 +0000 |
---|---|---|
committer | Arnold Schwaighofer <aschwaighofer@apple.com> | 2014-02-02 03:12:34 +0000 |
commit | 17455633c77d7bbdf7eaec852a4b6daef54b5f7f (patch) | |
tree | a6fb3be51e1303c18df9773f2555891f90870551 /llvm/lib/Transforms | |
parent | 6e63dd27a27870f85d00df8ba40ce8ed6b07917f (diff) | |
download | bcm5719-llvm-17455633c77d7bbdf7eaec852a4b6daef54b5f7f.tar.gz bcm5719-llvm-17455633c77d7bbdf7eaec852a4b6daef54b5f7f.zip |
LoopVectorizer: Enable unrolling of conditional stores and the load/store
unrolling heuristic per default
Benchmarking on x86_64 (thanks Chandler!) and ARM has shown those options speed
up some benchmarks while not causing any interesting regressions.
llvm-svn: 200621
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r-- | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp index 1f494922b31..930cf7799a2 100644 --- a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -180,16 +180,16 @@ static cl::opt<bool> LoopVectorizeWithBlockFrequency( // Runtime unroll loops for load/store throughput. static cl::opt<bool> EnableLoadStoreRuntimeUnroll( - "enable-loadstore-runtime-unroll", cl::init(false), cl::Hidden, + "enable-loadstore-runtime-unroll", cl::init(true), cl::Hidden, cl::desc("Enable runtime unrolling until load/store ports are saturated")); /// The number of stores in a loop that are allowed to need predication. static cl::opt<unsigned> NumberOfStoresToPredicate( - "vectorize-num-stores-pred", cl::init(0), cl::Hidden, + "vectorize-num-stores-pred", cl::init(1), cl::Hidden, cl::desc("Max number of stores to be predicated behind an if.")); static cl::opt<bool> EnableIndVarRegisterHeur( - "enable-ind-var-reg-heur", cl::init(false), cl::Hidden, + "enable-ind-var-reg-heur", cl::init(true), cl::Hidden, cl::desc("Count the induction variable only once when unrolling")); static cl::opt<bool> EnableCondStoresVectorization( |