summaryrefslogtreecommitdiffstats
path: root/runtime/parsed_options.cc
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2014-07-22 10:48:00 +0100
committerNicolas Geoffray <ngeoffray@google.com>2014-08-13 18:01:51 +0100
commit4fcdc94d22a4608e355aa8df36240181149d10e8 (patch)
treecb600df7e9b585720c03a08b10509151aa96d5dd /runtime/parsed_options.cc
parentb66252112d45fd24eab85122fa8902afd1324542 (diff)
downloadart-4fcdc94d22a4608e355aa8df36240181149d10e8.zip
art-4fcdc94d22a4608e355aa8df36240181149d10e8.tar.gz
art-4fcdc94d22a4608e355aa8df36240181149d10e8.tar.bz2
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.cc14
1 files changed, 10 insertions, 4 deletions
diff --git a/runtime/parsed_options.cc b/runtime/parsed_options.cc
index 12f9f33..3ef7a17 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");