Merge "Add JIT late override property"

This commit is contained in:
Mathieu Chartier
2015-03-18 22:56:54 +00:00
committed by Gerrit Code Review
4 changed files with 19 additions and 2 deletions

View File

@@ -631,6 +631,9 @@ public class Process {
if ((debugFlags & Zygote.DEBUG_ENABLE_CHECKJNI) != 0) {
argsForZygote.add("--enable-checkjni");
}
if ((debugFlags & Zygote.DEBUG_ENABLE_JIT) != 0) {
argsForZygote.add("--enable-jit");
}
if ((debugFlags & Zygote.DEBUG_ENABLE_ASSERT) != 0) {
argsForZygote.add("--enable-assert");
}

View File

@@ -34,10 +34,13 @@ public final class Zygote {
public static final int DEBUG_ENABLE_CHECKJNI = 1 << 1;
/** enable Java programming language "assert" statements */
public static final int DEBUG_ENABLE_ASSERT = 1 << 2;
/** disable the JIT compiler */
/** disable the AOT compiler and JIT */
public static final int DEBUG_ENABLE_SAFEMODE = 1 << 3;
/** Enable logging of third-party JNI activity. */
public static final int DEBUG_ENABLE_JNI_LOGGING = 1 << 4;
/** enable the JIT compiler */
public static final int DEBUG_ENABLE_JIT = 1 << 5;
/** No external storage should be mounted. */
public static final int MOUNT_EXTERNAL_NONE = 0;

View File

@@ -322,7 +322,7 @@ class ZygoteConnection {
/**
* From --enable-debugger, --enable-checkjni, --enable-assert,
* --enable-safemode, and --enable-jni-logging.
* --enable-safemode, --enable-jit, and --enable-jni-logging.
*/
int debugFlags;
@@ -432,6 +432,8 @@ class ZygoteConnection {
debugFlags |= Zygote.DEBUG_ENABLE_SAFEMODE;
} else if (arg.equals("--enable-checkjni")) {
debugFlags |= Zygote.DEBUG_ENABLE_CHECKJNI;
} else if (arg.equals("--enable-jit")) {
debugFlags |= Zygote.DEBUG_ENABLE_JIT;
} else if (arg.equals("--enable-jni-logging")) {
debugFlags |= Zygote.DEBUG_ENABLE_JNI_LOGGING;
} else if (arg.equals("--enable-assert")) {

View File

@@ -2991,6 +2991,15 @@ public final class ActivityManagerService extends ActivityManagerNative
if ("1".equals(SystemProperties.get("debug.checkjni"))) {
debugFlags |= Zygote.DEBUG_ENABLE_CHECKJNI;
}
String jitDebugProperty = SystemProperties.get("debug.usejit");
if ("true".equals(jitDebugProperty)) {
debugFlags |= Zygote.DEBUG_ENABLE_JIT;
} else if (!"false".equals(jitDebugProperty)) {
// If we didn't force disable by setting false, defer to the dalvik vm options.
if ("true".equals(SystemProperties.get("dalvik.vm.usejit"))) {
debugFlags |= Zygote.DEBUG_ENABLE_JIT;
}
}
if ("1".equals(SystemProperties.get("debug.jni.logging"))) {
debugFlags |= Zygote.DEBUG_ENABLE_JNI_LOGGING;
}