diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2014-07-22 10:48:00 +0100 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2014-08-13 18:01:51 +0100 |
commit | 4fcdc94d22a4608e355aa8df36240181149d10e8 (patch) | |
tree | cb600df7e9b585720c03a08b10509151aa96d5dd /runtime/parsed_options.cc | |
parent | b66252112d45fd24eab85122fa8902afd1324542 (diff) | |
download | art-4fcdc94d22a4608e355aa8df36240181149d10e8.tar.gz art-4fcdc94d22a4608e355aa8df36240181149d10e8.tar.bz2 art-4fcdc94d22a4608e355aa8df36240181149d10e8.zip |
Execute an application even when dex2oat crashes.
Bug: 17000769
Change-Id: Iffeb582862a5e794b6c7364c7ec2368cfd0f2214
Diffstat (limited to 'runtime/parsed_options.cc')
-rw-r--r-- | runtime/parsed_options.cc | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/runtime/parsed_options.cc b/runtime/parsed_options.cc index 12f9f33f5f..3ef7a17615 100644 --- a/runtime/parsed_options.cc +++ b/runtime/parsed_options.cc @@ -223,6 +223,7 @@ bool ParsedOptions::Parse(const RuntimeOptions& options, bool ignore_unrecognize compiler_callbacks_ = nullptr; is_zygote_ = false; must_relocate_ = kDefaultMustRelocate; + dex2oat_enabled_ = true; if (kPoisonHeapReferences) { // kPoisonHeapReferences currently works only with the interpreter only. // TODO: make it work with the compiler. @@ -421,6 +422,10 @@ bool ParsedOptions::Parse(const RuntimeOptions& options, bool ignore_unrecognize must_relocate_ = true; } else if (option == "-Xnorelocate") { must_relocate_ = false; + } else if (option == "-Xnodex2oat") { + dex2oat_enabled_ = false; + } else if (option == "-Xdex2oat") { + dex2oat_enabled_ = true; } else if (option == "-Xint") { interpreter_only_ = true; } else if (StartsWith(option, "-Xgc:")) { @@ -710,7 +715,7 @@ void ParsedOptions::Usage(const char* fmt, ...) { UsageMessage(stream, "The following standard options are supported:\n"); UsageMessage(stream, " -classpath classpath (-cp classpath)\n"); UsageMessage(stream, " -Dproperty=value\n"); - UsageMessage(stream, " -verbose:tag ('gc', 'jni', or 'class')\n"); + UsageMessage(stream, " -verbose:tag ('gc', 'jni', or 'class')\n"); UsageMessage(stream, " -showversion\n"); UsageMessage(stream, " -help\n"); UsageMessage(stream, " -agentlib:jdwp=options\n"); @@ -720,9 +725,9 @@ void ParsedOptions::Usage(const char* fmt, ...) { UsageMessage(stream, " -Xrunjdwp:<options>\n"); UsageMessage(stream, " -Xbootclasspath:bootclasspath\n"); UsageMessage(stream, " -Xcheck:tag (e.g. 'jni')\n"); - UsageMessage(stream, " -XmsN (min heap, must be multiple of 1K, >= 1MB)\n"); - UsageMessage(stream, " -XmxN (max heap, must be multiple of 1K, >= 2MB)\n"); - UsageMessage(stream, " -XssN (stack size)\n"); + UsageMessage(stream, " -XmsN (min heap, must be multiple of 1K, >= 1MB)\n"); + UsageMessage(stream, " -XmxN (max heap, must be multiple of 1K, >= 2MB)\n"); + UsageMessage(stream, " -XssN (stack size)\n"); UsageMessage(stream, " -Xint\n"); UsageMessage(stream, "\n"); @@ -776,6 +781,7 @@ void ParsedOptions::Usage(const char* fmt, ...) { UsageMessage(stream, " -Ximage-compiler-option dex2oat-option\n"); UsageMessage(stream, " -Xpatchoat:filename\n"); UsageMessage(stream, " -X[no]relocate\n"); + UsageMessage(stream, " -X[no]dex2oat (Whether to invoke dex2oat on the application)\n"); UsageMessage(stream, "\n"); UsageMessage(stream, "The following previously supported Dalvik options are ignored:\n"); |