summaryrefslogtreecommitdiff
path: root/lib/Passes/PassRegistry.def
diff options
context:
space:
mode:
authorAmjad Aboud <amjad.aboud@intel.com>2018-01-24 12:42:42 +0000
committerAmjad Aboud <amjad.aboud@intel.com>2018-01-24 12:42:42 +0000
commit594d89a6144af91ddcab5e2ce1f1bf63b7e3058b (patch)
tree4e5fcc0f75ca63cbe54bdc76507eb97cbb357b53 /lib/Passes/PassRegistry.def
parent3c8f2b3adf8eeaa0218f2077bc60411809caa78e (diff)
[InstCombine] Introducing Aggressive Instruction Combine pass (-aggressive-instcombine).
Combine expression patterns to form expressions with fewer, simple instructions. This pass does not modify the CFG. For example, this pass reduce width of expressions post-dominated by TruncInst into smaller width when applicable. It differs from instcombine pass in that it contains pattern optimization that requires higher complexity than the O(1), thus, it should run fewer times than instcombine pass. Differential Revision: https://reviews.llvm.org/D38313 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@323321 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Passes/PassRegistry.def')
-rw-r--r--lib/Passes/PassRegistry.def1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Passes/PassRegistry.def b/lib/Passes/PassRegistry.def
index 9ac95ee6fa8..bebeb8f2a7e 100644
--- a/lib/Passes/PassRegistry.def
+++ b/lib/Passes/PassRegistry.def
@@ -139,6 +139,7 @@ FUNCTION_ALIAS_ANALYSIS("type-based-aa", TypeBasedAA())
FUNCTION_PASS("aa-eval", AAEvaluator())
FUNCTION_PASS("adce", ADCEPass())
FUNCTION_PASS("add-discriminators", AddDiscriminatorsPass())
+FUNCTION_PASS("aggressive-instcombine", AggressiveInstCombinePass())
FUNCTION_PASS("alignment-from-assumptions", AlignmentFromAssumptionsPass())
FUNCTION_PASS("bdce", BDCEPass())
FUNCTION_PASS("bounds-checking", BoundsCheckingPass())