From 3197b4453d214aa96de3a42da8f8fe189fff2077 Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Mon, 2 Apr 2012 22:16:50 +0000 Subject: Add an option to turn off the expensive GVN load PRE part of GVN. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153902 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/lto/LTOCodeGenerator.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'tools') diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp index 1d2631e..f0640c2 100644 --- a/tools/lto/LTOCodeGenerator.cpp +++ b/tools/lto/LTOCodeGenerator.cpp @@ -49,6 +49,9 @@ using namespace llvm; static cl::opt DisableInline("disable-inlining", cl::desc("Do not run the inliner pass")); +static cl::opt DisableGVNLoadPRE("disable-gvn-loadpre", + cl::desc("Do not run the GVN load PRE pass")); + const char* LTOCodeGenerator::getVersionString() { #ifdef LLVM_VERSION_INFO return PACKAGE_NAME " version " PACKAGE_VERSION ", " LLVM_VERSION_INFO; @@ -353,7 +356,8 @@ bool LTOCodeGenerator::generateObjectFile(raw_ostream &out, passes.add(new TargetData(*_target->getTargetData())); PassManagerBuilder().populateLTOPassManager(passes, /*Internalize=*/ false, - !DisableInline); + !DisableInline, + DisableGVNLoadPRE); // Make sure everything is still good. passes.add(createVerifierPass()); -- cgit v1.1