diff options
author | Andreas Gampe <agampe@google.com> | 2014-12-29 17:43:08 -0800 |
---|---|---|
committer | Andreas Gampe <agampe@google.com> | 2015-01-15 10:21:11 -0800 |
commit | 71fb52fee246b7d511f520febbd73dc7a9bbca79 (patch) | |
tree | 444d91e910433aaf887bbdada28dfaa3160bebc2 /compiler/optimizing/optimizing_compiler.cc | |
parent | 420457e6040184a6e1639a4c84fcc8e237bd8a3d (diff) | |
download | android_art-71fb52fee246b7d511f520febbd73dc7a9bbca79.tar.gz android_art-71fb52fee246b7d511f520febbd73dc7a9bbca79.tar.bz2 android_art-71fb52fee246b7d511f520febbd73dc7a9bbca79.zip |
ART: Optimizing compiler intrinsics
Add intrinsics infrastructure to the optimizing compiler.
Add almost all intrinsics supported by Quick to the x86-64 backend.
Further intrinsics require more assembler support.
Change-Id: I48de9b44c82886bb298d16e74e12a9506b8e8807
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index eaecbb04ae..605637300f 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -25,6 +25,7 @@ #include "compiler.h" #include "constant_folding.h" #include "dead_code_elimination.h" +#include "dex/quick/dex_file_to_method_inliner_map.h" #include "driver/compiler_driver.h" #include "driver/dex_compilation_unit.h" #include "elf_writer_quick.h" @@ -32,6 +33,7 @@ #include "gvn.h" #include "inliner.h" #include "instruction_simplifier.h" +#include "intrinsics.h" #include "jni/quick/jni_compiler.h" #include "mirror/art_method-inl.h" #include "nodes.h" @@ -215,9 +217,12 @@ static void RunOptimizations(HGraph* graph, BoundsCheckElimination bce(graph); InstructionSimplifier simplify2(graph); + IntrinsicsRecognizer intrinsics(graph, dex_compilation_unit.GetDexFile(), driver); + HOptimization* optimizations[] = { &redundant_phi, &dead_phi, + &intrinsics, &dce, &fold, &simplify1, |