diff options
author | 2015-01-26 12:54:33 +0000 | |
---|---|---|
committer | 2015-01-26 14:44:57 +0000 | |
commit | 86dde1658a1951c251dd5c6ff21ecc5c281879a6 (patch) | |
tree | ac28ec3a686fb4e9809123d8bfcdd0096b2426fb /compiler/optimizing/optimizing_compiler.cc | |
parent | 2dadc9df0ffb822870a150f81257792b83241c77 (diff) |
Introduce a SideEffectsAnalysis class.
LICM also needs the side effects information of loops, so move
the GVN::ComputeSideEffects method into its own analysis class.
Change-Id: I810c8230a0eb6b9b536e8f808e17a3a4ad72f7db
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index 5bca73003e..7f99edb0a8 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -214,7 +214,8 @@ static void RunOptimizations(HGraph* graph, HInliner inliner(graph, dex_compilation_unit, driver, stats); HConstantFolding fold2(graph); - GVNOptimization gvn(graph); + SideEffectsAnalysis side_effects(graph); + GVNOptimization gvn(graph, side_effects); BoundsCheckElimination bce(graph); InstructionSimplifier simplify2(graph); @@ -229,6 +230,7 @@ static void RunOptimizations(HGraph* graph, &simplify1, &inliner, &fold2, + &side_effects, &gvn, &bce, &simplify2 |