Installd: Separate profile merging and compilation
Create a new merge_profiles command to check and merge profiles.
(Almost) always pass a profile to a dexopt pass.
Require compilation filter input to dexopt and use it for dex2oat
(except for hard overrides like safe-mode).
Bug: 27689078
Change-Id: I1257857cc15c17e2271d1261ea4cc80752270fcb
diff --git a/cmds/installd/otapreopt.cpp b/cmds/installd/otapreopt.cpp
index 89a4225..245694a 100644
--- a/cmds/installd/otapreopt.cpp
+++ b/cmds/installd/otapreopt.cpp
@@ -357,17 +357,15 @@
}
int RunPreopt() {
- /* apk_path, uid, pkgname, instruction_set, dexopt_needed, oat_dir, dexopt_flags,
- volume_uuid, use_profiles */
- int ret = dexopt(package_parameters_[0],
- atoi(package_parameters_[1]),
- package_parameters_[2],
- package_parameters_[3],
- atoi(package_parameters_[4]),
- package_parameters_[5],
- atoi(package_parameters_[6]),
- ParseNull(package_parameters_[7]),
- (atoi(package_parameters_[8]) == 0 ? false : true));
+ int ret = dexopt(package_parameters_[0], // apk_path
+ atoi(package_parameters_[1]), // uid
+ package_parameters_[2], // pkgname
+ package_parameters_[3], // instruction_set
+ atoi(package_parameters_[4]), // dexopt_needed
+ package_parameters_[5], // oat_dir
+ atoi(package_parameters_[6]), // dexopt_flags
+ package_parameters_[7], // compiler_filter
+ ParseNull(package_parameters_[8])); // volume_uuid
return ret;
}