diff options
author | Owen Anderson <resistor@mac.com> | 2008-06-19 19:57:25 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2008-06-19 19:57:25 +0000 |
commit | a2bf766ceba4f49ef1a4d3ea606c355f822cd062 (patch) | |
tree | ead495e27fa947df0e97161f804945be2cdad850 /lib | |
parent | ec747c417436fc778263b80f3c28eb838582983c (diff) | |
download | external_llvm-a2bf766ceba4f49ef1a4d3ea606c355f822cd062.zip external_llvm-a2bf766ceba4f49ef1a4d3ea606c355f822cd062.tar.gz external_llvm-a2bf766ceba4f49ef1a4d3ea606c355f822cd062.tar.bz2 |
Add a hidden -disable-pre flag for testing purposes. This should be removed
once benchmarking is completed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52506 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Transforms/Scalar/GVN.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/Transforms/Scalar/GVN.cpp b/lib/Transforms/Scalar/GVN.cpp index cbc24ed..88377d5 100644 --- a/lib/Transforms/Scalar/GVN.cpp +++ b/lib/Transforms/Scalar/GVN.cpp @@ -32,6 +32,7 @@ #include "llvm/Analysis/AliasAnalysis.h" #include "llvm/Analysis/MemoryDependenceAnalysis.h" #include "llvm/Support/CFG.h" +#include "llvm/Support/CommandLine.h" #include "llvm/Support/Compiler.h" #include "llvm/Support/Debug.h" #include "llvm/Transforms/Utils/BasicBlockUtils.h" @@ -41,6 +42,9 @@ STATISTIC(NumGVNInstr, "Number of instructions deleted"); STATISTIC(NumGVNLoad, "Number of loads deleted"); STATISTIC(NumGVNPRE, "Number of instructions PRE'd"); +static cl::opt<bool> DisablePRE("disable-pre", + cl::init(false), cl::Hidden); + //===----------------------------------------------------------------------===// // ValueTable Class //===----------------------------------------------------------------------===// @@ -1285,7 +1289,9 @@ bool GVN::iterateOnFunction(Function &F) { for (df_iterator<DomTreeNode*> DI = df_begin(DT.getRootNode()), DE = df_end(DT.getRootNode()); DI != DE; ++DI) changed |= processBlock(*DI); - - changed |= performPRE(F); + + if (!DisablePRE) + changed |= performPRE(F); + return changed; } |