summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/optimizing_compiler.cc
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2014-10-17 17:02:00 +0100
committerRoland Levillain <rpl@google.com>2014-10-17 17:11:43 +0100
commit75be28332b278cff9039b54bfb228ac72f539ccc (patch)
treea01829ba0412d0f6637a833b41694f0d757d8f43 /compiler/optimizing/optimizing_compiler.cc
parentffb078ee815a38123581e706099a3bed65a6cb24 (diff)
downloadart-75be28332b278cff9039b54bfb228ac72f539ccc.tar.gz
art-75be28332b278cff9039b54bfb228ac72f539ccc.tar.bz2
art-75be28332b278cff9039b54bfb228ac72f539ccc.zip
Revert "Revert "Introduce a class to implement optimization passes.""
This reverts commit 1ddbf6d4b37979a9f11a203c12befd5ae8b65df4. Change-Id: I110a14668d1564ee0604dc958b91394b40da89fc
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r--compiler/optimizing/optimizing_compiler.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc
index 3cf5a0b291..dce8e6d78b 100644
--- a/compiler/optimizing/optimizing_compiler.cc
+++ b/compiler/optimizing/optimizing_compiler.cc
@@ -22,6 +22,8 @@
#include "builder.h"
#include "code_generator.h"
#include "compiler.h"
+#include "constant_folding.h"
+#include "dead_code_elimination.h"
#include "driver/compiler_driver.h"
#include "driver/dex_compilation_unit.h"
#include "graph_visualizer.h"
@@ -261,6 +263,9 @@ CompiledMethod* OptimizingCompiler::TryCompile(const DexFile::CodeItem* code_ite
visualizer.DumpGraph("ssa");
graph->FindNaturalLoops();
+ HDeadCodeElimination(graph, visualizer).Execute();
+ HConstantFolding(graph, visualizer).Execute();
+
SsaRedundantPhiElimination(graph).Run();
SsaDeadPhiElimination(graph).Run();
InstructionSimplifier(graph).Run();