diff options
author | 2017-09-27 16:04:20 +0000 | |
---|---|---|
committer | 2017-09-27 16:04:20 +0000 | |
commit | e5b35ed787fbfb388d162361310bae5b0e7682a7 (patch) | |
tree | 33e6dde28be9579a8a60202a16caa5ba88cd7597 /compiler/optimizing/optimizing_compiler.cc | |
parent | 476fce3434939eadb35e532922b22f1b583aecd5 (diff) | |
parent | b8e9c35df4058834afc95e2dbfb0e8114b1991da (diff) |
Merge "Enables GVN for MIPS32 and MIPS64."
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index aeb2b03787..10b3fe1731 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -671,13 +671,29 @@ void OptimizingCompiler::RunArchOptimizations(InstructionSet instruction_set, case kMips: { mips::PcRelativeFixups* pc_relative_fixups = new (arena) mips::PcRelativeFixups(graph, codegen, stats); + SideEffectsAnalysis* side_effects = new (arena) SideEffectsAnalysis(graph); + GVNOptimization* gvn = new (arena) GVNOptimization(graph, *side_effects, "GVN$after_arch"); HOptimization* mips_optimizations[] = { + side_effects, + gvn, pc_relative_fixups, }; RunOptimizations(mips_optimizations, arraysize(mips_optimizations), pass_observer); break; } #endif +#ifdef ART_ENABLE_CODEGEN_mips64 + case kMips64: { + SideEffectsAnalysis* side_effects = new (arena) SideEffectsAnalysis(graph); + GVNOptimization* gvn = new (arena) GVNOptimization(graph, *side_effects, "GVN$after_arch"); + HOptimization* mips64_optimizations[] = { + side_effects, + gvn, + }; + RunOptimizations(mips64_optimizations, arraysize(mips64_optimizations), pass_observer); + break; + } +#endif #ifdef ART_ENABLE_CODEGEN_x86 case kX86: { x86::PcRelativeFixups* pc_relative_fixups = |