summaryrefslogtreecommitdiffstats
path: root/dex2oat
diff options
context:
space:
mode:
authorDavid Srbecky <dsrbecky@google.com>2016-03-07 20:47:29 +0000
committerDavid Srbecky <dsrbecky@google.com>2016-03-11 17:39:01 +0000
commit5d950769b607b4f76413212db640a32d796911de (patch)
tree959ef6ac8fc67330243268a95cd990f805aebfca /dex2oat
parentb2359d4fb2c9de12830301faede59f4d5fa46278 (diff)
downloadart-5d950769b607b4f76413212db640a32d796911de.tar.gz
art-5d950769b607b4f76413212db640a32d796911de.tar.bz2
art-5d950769b607b4f76413212db640a32d796911de.zip
Symbolize native debug information for AOTed methods in boot.oat.
The oatdump symbolizer will produce all DWARF information now, not just the symtab. This allows us to recover almost all native debug information after the fact, even for non-debuggable oat files. The main drawback is that non-debuggable oat files do not have enough stackmaps to provide reasonable line stepping experience. We might also be missing inlined methods from backtraces. Change-Id: I73ff6f43a3a0e5a0907af353f74f04e9b0129590
Diffstat (limited to 'dex2oat')
-rw-r--r--dex2oat/dex2oat.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/dex2oat/dex2oat.cc b/dex2oat/dex2oat.cc
index a14a295f25..ce4f38a9e3 100644
--- a/dex2oat/dex2oat.cc
+++ b/dex2oat/dex2oat.cc
@@ -1035,6 +1035,9 @@ class Dex2Oat FINAL {
key_value_store_->Put(
OatHeader::kDebuggableKey,
compiler_options_->debuggable_ ? OatHeader::kTrueValue : OatHeader::kFalseValue);
+ key_value_store_->Put(
+ OatHeader::kNativeDebuggableKey,
+ compiler_options_->native_debuggable_ ? OatHeader::kTrueValue : OatHeader::kFalseValue);
if (compiler_options_->IsExtractOnly()) {
key_value_store_->Put(OatHeader::kCompilationType, OatHeader::kExtractOnlyValue);
} else if (UseProfileGuidedCompilation()) {