summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/inliner.h
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2015-01-30 12:41:14 +0000
committerNicolas Geoffray <ngeoffray@google.com>2015-02-03 11:18:29 +0000
commitef87c5db0443fc4daa960042313a35352743430e (patch)
treec77f1427f42b93f47ab650f936ea7452189cffa9 /compiler/optimizing/inliner.h
parent515d828fd51f55bc71a6bcd268a7311f614d28b0 (diff)
downloadart-ef87c5db0443fc4daa960042313a35352743430e.tar.gz
art-ef87c5db0443fc4daa960042313a35352743430e.tar.bz2
art-ef87c5db0443fc4daa960042313a35352743430e.zip
Allow nested inlining.
Also run optimizations before iterating over the instructions to get rid of, e.g., null checks. Change-Id: I6e52e61ce4d0ccb63d687afea09bb4722453bb6a
Diffstat (limited to 'compiler/optimizing/inliner.h')
-rw-r--r--compiler/optimizing/inliner.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/optimizing/inliner.h b/compiler/optimizing/inliner.h
index 370e33c2a..07d893e7c 100644
--- a/compiler/optimizing/inliner.h
+++ b/compiler/optimizing/inliner.h
@@ -33,11 +33,13 @@ class HInliner : public HOptimization {
HInliner(HGraph* outer_graph,
const DexCompilationUnit& outer_compilation_unit,
CompilerDriver* compiler_driver,
- OptimizingCompilerStats* stats)
+ OptimizingCompilerStats* stats,
+ size_t depth = 0)
: HOptimization(outer_graph, true, "inliner"),
outer_compilation_unit_(outer_compilation_unit),
compiler_driver_(compiler_driver),
- outer_stats_(stats) {}
+ outer_stats_(stats),
+ depth_(depth) {}
void Run() OVERRIDE;
@@ -47,6 +49,7 @@ class HInliner : public HOptimization {
const DexCompilationUnit& outer_compilation_unit_;
CompilerDriver* const compiler_driver_;
OptimizingCompilerStats* const outer_stats_;
+ const size_t depth_;
DISALLOW_COPY_AND_ASSIGN(HInliner);
};