diff options
author | David Brazdil <dbrazdil@google.com> | 2015-03-31 11:37:18 +0100 |
---|---|---|
committer | David Brazdil <dbrazdil@google.com> | 2015-03-31 16:36:31 +0100 |
commit | 1b498727f79e85756a9eee86d31214393dc7002c (patch) | |
tree | 45c42ed6e28304e3ee9b713289fc32007f2faa06 /compiler/optimizing/builder.h | |
parent | ebbb1e322d8c89e69424a543faa03402e5b63673 (diff) | |
download | android_art-1b498727f79e85756a9eee86d31214393dc7002c.tar.gz android_art-1b498727f79e85756a9eee86d31214393dc7002c.tar.bz2 android_art-1b498727f79e85756a9eee86d31214393dc7002c.zip |
ART: Same skip-compilation heuristic in both backends
When deciding if a method should be compiled, Optimizing counts the
DEX instructions while Quick approximates this figure as the size of
the CodeItem. This patch modifies Optimizing to use the same logic
so that the two backends reject the same set of methods.
Change-Id: Icb12bf2977f948198df08d59f243532ec8c61783
Diffstat (limited to 'compiler/optimizing/builder.h')
-rw-r--r-- | compiler/optimizing/builder.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/compiler/optimizing/builder.h b/compiler/optimizing/builder.h index 6a0738a7b9..dc6d97eb0c 100644 --- a/compiler/optimizing/builder.h +++ b/compiler/optimizing/builder.h @@ -90,8 +90,6 @@ class HGraphBuilder : public ValueObject { // branches. void ComputeBranchTargets(const uint16_t* start, const uint16_t* end, - size_t* number_of_dex_instructions, - size_t* number_of_block, size_t* number_of_branches); void MaybeUpdateCurrentBlock(size_t index); HBasicBlock* FindBlockStartingAt(int32_t index) const; @@ -217,9 +215,7 @@ class HGraphBuilder : public ValueObject { HInstruction* value, int32_t case_value_int, int32_t target_offset, uint32_t dex_pc); - bool SkipCompilation(size_t number_of_dex_instructions, - size_t number_of_blocks, - size_t number_of_branches); + bool SkipCompilation(const DexFile::CodeItem& code_item, size_t number_of_branches); void MaybeRecordStat(MethodCompilationStat compilation_stat); |