diff options
author | Mingyao Yang <mingyao@google.com> | 2017-02-03 12:09:57 -0800 |
---|---|---|
committer | Mingyao Yang <mingyao@google.com> | 2017-03-08 10:15:06 -0800 |
commit | 01b47b046b01ec68696f8ff61b5326cdd3af348e (patch) | |
tree | e526306fc89bf6fb04ff914e24343dde0369e98c /compiler/optimizing/instruction_builder.h | |
parent | dcab11d06860ae1e23d03926adb6c31f75404032 (diff) |
Inlining a few small methods based on profiling dex2oat with perf.
Test: m test-art-host
Change-Id: I6313158e59592d8d132154523be9c82dda3c7eb8
Diffstat (limited to 'compiler/optimizing/instruction_builder.h')
-rw-r--r-- | compiler/optimizing/instruction_builder.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/optimizing/instruction_builder.h b/compiler/optimizing/instruction_builder.h index e735a0c46d..7fdc1883ca 100644 --- a/compiler/optimizing/instruction_builder.h +++ b/compiler/optimizing/instruction_builder.h @@ -93,6 +93,10 @@ class HInstructionBuilder : public ValueObject { HBasicBlock* FindBlockStartingAt(uint32_t dex_pc) const; ArenaVector<HInstruction*>* GetLocalsFor(HBasicBlock* block); + // Out of line version of GetLocalsFor(), which has a fast path that is + // beneficial to get inlined by callers. + ArenaVector<HInstruction*>* GetLocalsForWithAllocation( + HBasicBlock* block, ArenaVector<HInstruction*>* locals, const size_t vregs); HInstruction* ValueOfLocalAt(HBasicBlock* block, size_t local); HInstruction* LoadLocal(uint32_t register_index, Primitive::Type type) const; HInstruction* LoadNullCheckedLocal(uint32_t register_index, uint32_t dex_pc); |