summaryrefslogtreecommitdiffstats
path: root/cmds/installd/commands.c
diff options
context:
space:
mode:
authorBrian Carlstrom <bdc@google.com>2014-08-04 18:37:26 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-08-04 18:37:26 +0000
commit6461ddb4e1ea95bd416995c50e2cb93d93d9d390 (patch)
tree24b1de5be6fa48e8905cd288fb6927d3b0d7eb66 /cmds/installd/commands.c
parent3367a960ab51f5ebf42ee380e35531bd9f997756 (diff)
parent9c49e21d80cb55b7d77fdf118f06b88100141678 (diff)
downloadframeworks_native-6461ddb4e1ea95bd416995c50e2cb93d93d9d390.zip
frameworks_native-6461ddb4e1ea95bd416995c50e2cb93d93d9d390.tar.gz
frameworks_native-6461ddb4e1ea95bd416995c50e2cb93d93d9d390.tar.bz2
am 9c49e21d: Merge "Move from dalvik.vm.image-dex2oat-flags to dalvik.vm.dex2oat-filter [frameworks/native]"
* commit '9c49e21d80cb55b7d77fdf118f06b88100141678': Move from dalvik.vm.image-dex2oat-flags to dalvik.vm.dex2oat-filter [frameworks/native]
Diffstat (limited to 'cmds/installd/commands.c')
-rw-r--r--cmds/installd/commands.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/cmds/installd/commands.c b/cmds/installd/commands.c
index ba8edf2..8ed184a 100644
--- a/cmds/installd/commands.c
+++ b/cmds/installd/commands.c
@@ -645,6 +645,10 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
char dex2oat_Xmx_flag[PROPERTY_VALUE_MAX];
bool have_dex2oat_Xmx_flag = property_get("dalvik.vm.dex2oat-Xmx", dex2oat_Xmx_flag, NULL) > 0;
+ char dex2oat_compiler_filter_flag[PROPERTY_VALUE_MAX];
+ bool have_dex2oat_compiler_filter_flag = property_get("dalvik.vm.dex2oat-filter",
+ dex2oat_compiler_filter_flag, NULL) > 0;
+
char dex2oat_flags[PROPERTY_VALUE_MAX];
bool have_dex2oat_flags = property_get("dalvik.vm.dex2oat-flags", dex2oat_flags, NULL) > 0;
ALOGV("dalvik.vm.dex2oat-flags=%s\n", dex2oat_flags);
@@ -671,6 +675,7 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
char top_k_profile_threshold_arg[strlen("--top-k-profile-threshold=") + PROPERTY_VALUE_MAX];
char dex2oat_Xms_arg[strlen("-Xms") + PROPERTY_VALUE_MAX];
char dex2oat_Xmx_arg[strlen("-Xmx") + PROPERTY_VALUE_MAX];
+ char dex2oat_compiler_filter_arg[strlen("--compiler-filter=") + PROPERTY_VALUE_MAX];
sprintf(zip_fd_arg, "--zip-fd=%d", zip_fd);
sprintf(zip_location_arg, "--zip-location=%s", input_file_name);
@@ -702,6 +707,9 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
if (have_dex2oat_Xmx_flag) {
sprintf(dex2oat_Xmx_arg, "-Xmx%s", dex2oat_Xmx_flag);
}
+ if (have_dex2oat_compiler_filter_flag) {
+ sprintf(dex2oat_compiler_filter_arg, "--compiler-filter=%s", dex2oat_compiler_filter_flag);
+ }
ALOGV("Running %s in=%s out=%s\n", DEX2OAT_BIN, input_file_name, output_file_name);
@@ -710,6 +718,7 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
+ (have_top_k_profile_threshold ? 1 : 0)
+ (have_dex2oat_Xms_flag ? 2 : 0)
+ (have_dex2oat_Xmx_flag ? 2 : 0)
+ + (have_dex2oat_compiler_filter_flag ? 1 : 0)
+ (have_dex2oat_flags ? 1 : 0)];
int i = 0;
argv[i++] = (char*)DEX2OAT_BIN;
@@ -732,6 +741,9 @@ static void run_dex2oat(int zip_fd, int oat_fd, const char* input_file_name,
argv[i++] = (char*)RUNTIME_ARG;
argv[i++] = dex2oat_Xmx_arg;
}
+ if (have_dex2oat_compiler_filter_flag) {
+ argv[i++] = dex2oat_compiler_filter_arg;
+ }
if (have_dex2oat_flags) {
argv[i++] = dex2oat_flags;
}