Write .debug_line section using the new DWARF library.
Also simplify dex to java mapping and handle mapping
in prologues and epilogues.
Change-Id: I410f06024580f2a8788f2c93fe9bca132805029a
diff --git a/compiler/oat_writer.cc b/compiler/oat_writer.cc
index 04f0db6..880ac15 100644
--- a/compiler/oat_writer.cc
+++ b/compiler/oat_writer.cc
@@ -1069,10 +1069,12 @@
}
const uint32_t quick_code_start = quick_code_offset -
- writer_->oat_header_->GetExecutableOffset();
+ writer_->oat_header_->GetExecutableOffset() - thumb_offset;
const DexFile::CodeItem *code_item = it.GetMethodCodeItem();
- writer_->method_info_.push_back(DebugInfo(name,
- dex_file_->GetSourceFile(dex_file_->GetClassDef(class_def_index_)),
+ const DexFile::ClassDef& class_def = dex_file_->GetClassDef(class_def_index_);
+ writer_->method_info_.push_back(DebugInfo(name, deduped,
+ dex_file_->GetClassDescriptor(class_def),
+ dex_file_->GetSourceFile(class_def),
quick_code_start, quick_code_start + code_size,
code_item == nullptr ? nullptr : dex_file_->GetDebugInfoStream(code_item),
compiled_method));