summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2010-08-27 23:31:36 +0000
committerOwen Anderson <resistor@mac.com>2010-08-27 23:31:36 +0000
commita0b59f6bd23afaeba923b94f46838cffd5218a12 (patch)
tree0ac25e8321349e71ebdc071c25df9b28d97a8d32 /include
parentee61fcf98bb84e7e9f3450035bef92c4d087c0ae (diff)
downloadllvm-a0b59f6bd23afaeba923b94f46838cffd5218a12.tar.gz
llvm-a0b59f6bd23afaeba923b94f46838cffd5218a12.tar.bz2
llvm-a0b59f6bd23afaeba923b94f46838cffd5218a12.tar.xz
Add a prototype of a new peephole optimizing pass that uses LazyValue info to simplify PHIs and select's.
This pass addresses the missed optimizations from PR2581 and PR4420. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112325 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/LinkAllPasses.h1
-rw-r--r--include/llvm/Transforms/Scalar.h6
2 files changed, 7 insertions, 0 deletions
diff --git a/include/llvm/LinkAllPasses.h b/include/llvm/LinkAllPasses.h
index 805db4ebf9..78428f9241 100644
--- a/include/llvm/LinkAllPasses.h
+++ b/include/llvm/LinkAllPasses.h
@@ -149,6 +149,7 @@ namespace {
(void) llvm::createLintPass();
(void) llvm::createSinkingPass();
(void) llvm::createLowerAtomicPass();
+ (void) llvm::createValuePropagationPass();
(void)new llvm::IntervalPartition();
(void)new llvm::FindUsedTypes();
diff --git a/include/llvm/Transforms/Scalar.h b/include/llvm/Transforms/Scalar.h
index 2278717d37..12f2a9812f 100644
--- a/include/llvm/Transforms/Scalar.h
+++ b/include/llvm/Transforms/Scalar.h
@@ -343,6 +343,12 @@ FunctionPass *createSinkingPass();
//
Pass *createLowerAtomicPass();
+//===----------------------------------------------------------------------===//
+//
+// ValuePropagation - Propagate CFG-derived value information
+//
+Pass *createValuePropagationPass();
+
} // End llvm namespace
#endif