diff options
Diffstat (limited to 'dex2oat/dex2oat.cc')
-rw-r--r-- | dex2oat/dex2oat.cc | 8 |
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, |