diff options
author | Clement Courbet <courbet@google.com> | 2018-02-07 09:58:55 +0000 |
---|---|---|
committer | Clement Courbet <courbet@google.com> | 2018-02-07 09:58:55 +0000 |
commit | 10003e31f47cb8a542e3d13b0fb5f56902e38854 (patch) | |
tree | c7238b4085dfb5d6700cf951c4774399d829ef30 /llvm/lib/CodeGen/TargetPassConfig.cpp | |
parent | 308c92b25d95049fb8ab846ea23b7100ed8660d2 (diff) | |
download | bcm5719-llvm-10003e31f47cb8a542e3d13b0fb5f56902e38854.tar.gz bcm5719-llvm-10003e31f47cb8a542e3d13b0fb5f56902e38854.zip |
[MergeICmps] Re-commit rL324317 "Enable the MergeICmps Pass by default."
With fixes from rL324341.
Original commit message:
[MergeICmps] Enable the MergeICmps Pass by default.
Summary: Now that PR33325 is fixed, this should always improve the generated code.
Reviewers: spatel
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D42793
llvm-svn: 324465
Diffstat (limited to 'llvm/lib/CodeGen/TargetPassConfig.cpp')
-rw-r--r-- | llvm/lib/CodeGen/TargetPassConfig.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/TargetPassConfig.cpp b/llvm/lib/CodeGen/TargetPassConfig.cpp index 43fec69495b..84597570c16 100644 --- a/llvm/lib/CodeGen/TargetPassConfig.cpp +++ b/llvm/lib/CodeGen/TargetPassConfig.cpp @@ -94,10 +94,9 @@ static cl::opt<bool> EnableImplicitNullChecks( "enable-implicit-null-checks", cl::desc("Fold null checks into faulting memory operations"), cl::init(false), cl::Hidden); -static cl::opt<bool> - EnableMergeICmps("enable-mergeicmps", - cl::desc("Merge ICmp chains into a single memcmp"), - cl::init(false), cl::Hidden); +static cl::opt<bool> DisableMergeICmps("disable-mergeicmps", + cl::desc("Disable MergeICmps Pass"), + cl::init(false), cl::Hidden); static cl::opt<bool> PrintLSR("print-lsr-output", cl::Hidden, cl::desc("Print LLVM IR produced by the loop-reduce pass")); static cl::opt<bool> PrintISelInput("print-isel-input", cl::Hidden, @@ -596,7 +595,7 @@ void TargetPassConfig::addIRPasses() { // loads and compares. ExpandMemCmpPass then tries to expand those calls // into optimally-sized loads and compares. The transforms are enabled by a // target lowering hook. - if (EnableMergeICmps) + if (!DisableMergeICmps) addPass(createMergeICmpsPass()); addPass(createExpandMemCmpPass()); } |