diff options
Diffstat (limited to 'compiler/optimizing/code_generator.cc')
-rw-r--r-- | compiler/optimizing/code_generator.cc | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/compiler/optimizing/code_generator.cc b/compiler/optimizing/code_generator.cc index 6d3a5c6a73..bef7169da1 100644 --- a/compiler/optimizing/code_generator.cc +++ b/compiler/optimizing/code_generator.cc @@ -1116,6 +1116,14 @@ void CodeGenerator::RecordPcInfo(HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path, bool native_debug_info) { + RecordPcInfo(instruction, dex_pc, GetAssembler()->CodePosition(), slow_path, native_debug_info); +} + +void CodeGenerator::RecordPcInfo(HInstruction* instruction, + uint32_t dex_pc, + uint32_t native_pc, + SlowPathCode* slow_path, + bool native_debug_info) { if (instruction != nullptr) { // The code generated for some type conversions // may call the runtime, thus normally requiring a subsequent @@ -1139,9 +1147,6 @@ void CodeGenerator::RecordPcInfo(HInstruction* instruction, } } - // Collect PC infos for the mapping table. - uint32_t native_pc = GetAssembler()->CodePosition(); - StackMapStream* stack_map_stream = GetStackMapStream(); if (instruction == nullptr) { // For stack overflow checks and native-debug-info entries without dex register @@ -1493,7 +1498,7 @@ bool CodeGenerator::CanMoveNullCheckToUser(HNullCheck* null_check) { void CodeGenerator::MaybeRecordImplicitNullCheck(HInstruction* instr) { HNullCheck* null_check = instr->GetImplicitNullCheck(); if (null_check != nullptr) { - RecordPcInfo(null_check, null_check->GetDexPc()); + RecordPcInfo(null_check, null_check->GetDexPc(), GetAssembler()->CodePosition()); } } |