summaryrefslogtreecommitdiffstats
path: root/dex2oat/dex2oat.cc
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2015-03-04 21:12:27 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-03-04 21:12:27 +0000
commitc670efd6ba9dbd1166bfd8c805bb6b2df7d4313a (patch)
treed112f34d4926e9b6fc3adf9504303fdddb22b7d3 /dex2oat/dex2oat.cc
parent029113f1013e2ce9027ea241a68f93072ce1bfe9 (diff)
parent7b2f09eb6b5c74ffc38bd70f0aa74b8f8112e394 (diff)
downloadart-c670efd6ba9dbd1166bfd8c805bb6b2df7d4313a.zip
art-c670efd6ba9dbd1166bfd8c805bb6b2df7d4313a.tar.gz
art-c670efd6ba9dbd1166bfd8c805bb6b2df7d4313a.tar.bz2
Merge "ART: Add debuggable compiler flag"
Diffstat (limited to 'dex2oat/dex2oat.cc')
-rw-r--r--dex2oat/dex2oat.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/dex2oat/dex2oat.cc b/dex2oat/dex2oat.cc
index df7bb57..c080453 100644
--- a/dex2oat/dex2oat.cc
+++ b/dex2oat/dex2oat.cc
@@ -487,6 +487,7 @@ class Dex2Oat FINAL {
// Profile file to use
double top_k_profile_threshold = CompilerOptions::kDefaultTopKProfileThreshold;
+ bool debuggable = false;
bool include_patch_information = CompilerOptions::kDefaultIncludePatchInformation;
bool include_debug_symbols = kIsDebugBuild;
bool watch_dog_enabled = true;
@@ -675,6 +676,8 @@ class Dex2Oat FINAL {
} else if (option == "--no-include-debug-symbols" || option == "--strip-symbols") {
include_debug_symbols = false;
generate_gdb_information = false; // Depends on debug symbols, see above.
+ } else if (option == "--debuggable") {
+ debuggable = true;
} else if (option.starts_with("--profile-file=")) {
profile_file_ = option.substr(strlen("--profile-file=")).data();
VLOG(compiler) << "dex2oat: profile file is " << profile_file_;
@@ -915,6 +918,10 @@ class Dex2Oat FINAL {
break;
}
+ if (debuggable) {
+ // TODO: Consider adding CFI info and symbols here.
+ }
+
compiler_options_.reset(new CompilerOptions(compiler_filter,
huge_method_threshold,
large_method_threshold,
@@ -924,6 +931,7 @@ class Dex2Oat FINAL {
generate_gdb_information,
include_patch_information,
top_k_profile_threshold,
+ debuggable,
include_debug_symbols,
implicit_null_checks,
implicit_so_checks,