summaryrefslogtreecommitdiff
path: root/compiler/optimizing/optimization.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/optimization.cc')
-rw-r--r--compiler/optimizing/optimization.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/optimizing/optimization.cc b/compiler/optimizing/optimization.cc
index e1b97b4aac..12e9a1046d 100644
--- a/compiler/optimizing/optimization.cc
+++ b/compiler/optimizing/optimization.cc
@@ -77,6 +77,7 @@ const char* OptimizationPassName(OptimizationPass pass) {
return BoundsCheckElimination::kBoundsCheckEliminationPassName;
case OptimizationPass::kLoadStoreElimination:
return LoadStoreElimination::kLoadStoreEliminationPassName;
+ case OptimizationPass::kAggressiveConstantFolding:
case OptimizationPass::kConstantFolding:
return HConstantFolding::kConstantFoldingPassName;
case OptimizationPass::kDeadCodeElimination:
@@ -227,6 +228,10 @@ ArenaVector<HOptimization*> ConstructOptimizations(
case OptimizationPass::kConstantFolding:
opt = new (allocator) HConstantFolding(graph, stats, pass_name);
break;
+ case OptimizationPass::kAggressiveConstantFolding:
+ opt = new (allocator)
+ HConstantFolding(graph, stats, pass_name, /* use_all_optimizations_ = */ true);
+ break;
case OptimizationPass::kDeadCodeElimination:
opt = new (allocator) HDeadCodeElimination(graph, stats, pass_name);
break;