diff options
| author | 2017-03-08 20:29:49 +0000 | |
|---|---|---|
| committer | 2017-03-08 20:29:51 +0000 | |
| commit | caa348cee1312150a957bd308ce77ad406f3eb64 (patch) | |
| tree | 575f0b062f8adb1b8fc7ebc5f6ef18bea5ae1db7 /compiler/optimizing/instruction_builder.h | |
| parent | c02fe5f31d487765a8c59922c46d459ba6ebf939 (diff) | |
| parent | 01b47b046b01ec68696f8ff61b5326cdd3af348e (diff) | |
Merge "Inlining a few small methods based on profiling dex2oat with perf."
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); |