diff options
| author | 2015-05-21 11:11:17 +0000 | |
|---|---|---|
| committer | 2015-05-21 11:11:18 +0000 | |
| commit | 9758a8e4f7a8823161604aa876517e9ff5b8bb12 (patch) | |
| tree | f1c3805eeec53b169d5204e4e8fda5722751bc54 /compiler/optimizing/stack_map_stream.cc | |
| parent | 19b71cd0af3b45a105073d80ce33ede69b14adfd (diff) | |
| parent | b176d7c6c8c01a50317f837a78de5da57ee84fb2 (diff) | |
Merge "Also encode the InvokeType in an InlineInfo."
Diffstat (limited to 'compiler/optimizing/stack_map_stream.cc')
| -rw-r--r-- | compiler/optimizing/stack_map_stream.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/optimizing/stack_map_stream.cc b/compiler/optimizing/stack_map_stream.cc index 89035a3683..b446815770 100644 --- a/compiler/optimizing/stack_map_stream.cc +++ b/compiler/optimizing/stack_map_stream.cc @@ -101,11 +101,13 @@ void StackMapStream::AddDexRegisterEntry(DexRegisterLocation::Kind kind, int32_t void StackMapStream::BeginInlineInfoEntry(uint32_t method_index, uint32_t dex_pc, + InvokeType invoke_type, uint32_t num_dex_registers) { DCHECK(!in_inline_frame_); in_inline_frame_ = true; current_inline_info_.method_index = method_index; current_inline_info_.dex_pc = dex_pc; + current_inline_info_.invoke_type = invoke_type; current_inline_info_.num_dex_registers = num_dex_registers; current_inline_info_.dex_register_locations_start_index = dex_register_locations_.Size(); if (num_dex_registers != 0) { @@ -313,6 +315,7 @@ void StackMapStream::FillIn(MemoryRegion region) { InlineInfoEntry inline_entry = inline_infos_.Get(depth + entry.inline_infos_start_index); inline_info.SetMethodIndexAtDepth(depth, inline_entry.method_index); inline_info.SetDexPcAtDepth(depth, inline_entry.dex_pc); + inline_info.SetInvokeTypeAtDepth(depth, inline_entry.invoke_type); if (inline_entry.num_dex_registers == 0) { // No dex map available. inline_info.SetDexRegisterMapOffsetAtDepth(depth, StackMap::kNoDexRegisterMap); |