aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-05-08 22:19:01 +0000
committerChris Lattner <sabre@nondot.org>2002-05-08 22:19:01 +0000
commit540d63cbc75fae1c6187e97b995e5a52e7d1ad50 (patch)
treeca5fb227eea9b9b28e608018bdce4438e1285caa
parent8947fbcb68ddf45e42f5fc6d5763defb7426deee (diff)
downloadexternal_llvm-540d63cbc75fae1c6187e97b995e5a52e7d1ad50.zip
external_llvm-540d63cbc75fae1c6187e97b995e5a52e7d1ad50.tar.gz
external_llvm-540d63cbc75fae1c6187e97b995e5a52e7d1ad50.tar.bz2
Add expr reassociation pass prototype
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2558 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Transforms/Scalar.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/llvm/Transforms/Scalar.h b/include/llvm/Transforms/Scalar.h
index 144db23..ba8b90c 100644
--- a/include/llvm/Transforms/Scalar.h
+++ b/include/llvm/Transforms/Scalar.h
@@ -112,6 +112,16 @@ Pass *createPromoteMemoryToRegister();
//===----------------------------------------------------------------------===//
//
+// This pass reassociates commutative expressions in an order that is designed
+// to promote better constant propogation, GCSE, LICM, PRE...
+//
+// For example: 4 + (x + 5) -> x + (4 + 5)
+//
+Pass *createReassociatePass();
+
+
+//===----------------------------------------------------------------------===//
+//
// These functions removes symbols from functions and modules.
//
Pass *createSymbolStrippingPass();