summaryrefslogtreecommitdiffstats
path: root/cmds
diff options
context:
space:
mode:
authorMathieu Chartier <mathieuc@google.com>2015-03-23 23:24:13 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-03-23 23:24:13 +0000
commitab62d4a4a7a17bb7ef9f9b00b27abd325adf0c92 (patch)
tree0c5e53a1cf50ed34fc0581b3211c964c9563f5c5 /cmds
parentd3260abf78765fb304a322ff9a7ebb6b2838b362 (diff)
parenta290b4b9121dab04c2989ab88017b8286075914b (diff)
downloadframeworks_native-ab62d4a4a7a17bb7ef9f9b00b27abd325adf0c92.zip
frameworks_native-ab62d4a4a7a17bb7ef9f9b00b27abd325adf0c92.tar.gz
frameworks_native-ab62d4a4a7a17bb7ef9f9b00b27abd325adf0c92.tar.bz2
am a290b4b9: am b4cf4d7d: am 6dad1713: Merge "Use verify-at-runtime if debug.usejit is true"
* commit 'a290b4b9121dab04c2989ab88017b8286075914b': Use verify-at-runtime if debug.usejit is true
Diffstat (limited to 'cmds')
-rw-r--r--cmds/installd/commands.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/cmds/installd/commands.c b/cmds/installd/commands.c
index d9376e1..9133a34 100644
--- a/cmds/installd/commands.c
+++ b/cmds/installd/commands.c
@@ -749,6 +749,10 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
(strcmp(vold_decrypt, "trigger_restart_min_framework") == 0 ||
(strcmp(vold_decrypt, "1") == 0)));
+ char use_jit_property[PROPERTY_VALUE_MAX];
+ bool have_jit_property = property_get("debug.usejit", use_jit_property, NULL) > 0;
+ bool use_jit = have_jit_property && strcmp(use_jit_property, "true") == 0;
+
static const char* DEX2OAT_BIN = "/system/bin/dex2oat";
static const char* RUNTIME_ARG = "--runtime-arg";
@@ -813,6 +817,9 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
} else if (vm_safe_mode) {
strcpy(dex2oat_compiler_filter_arg, "--compiler-filter=interpret-only");
have_dex2oat_compiler_filter_flag = true;
+ } else if (use_jit) {
+ strcpy(dex2oat_compiler_filter_arg, "--compiler-filter=verify-at-runtime");
+ have_dex2oat_compiler_filter_flag = true;
} else if (have_dex2oat_compiler_filter_flag) {
sprintf(dex2oat_compiler_filter_arg, "--compiler-filter=%s", dex2oat_compiler_filter_flag);
}