summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2016-11-28 13:48:24 +0000
committer android-build-merger <android-build-merger@google.com> 2016-11-28 13:48:24 +0000
commite1cb95bbeec31971dcab6a39b4666a12214a68b3 (patch)
tree05547181cceb08844ae4140df6234022fed306cd
parentd0835e45f7663cb6abef383b9d903429c824cd20 (diff)
parentfbeca51bc9f5ff1e98c5ceab30d50665e1a810d1 (diff)
Merge "Use the new refined DexOptNeeded codes." am: d7e597a2e7 am: 99ae18486c am: 51b40ee3eb
am: fbeca51bc9 Change-Id: I7f6578d517a77dd24ab5dc785b7fdd0ab8fd5946
-rw-r--r--services/core/java/com/android/server/pm/PackageDexOptimizer.java15
1 files changed, 8 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/pm/PackageDexOptimizer.java b/services/core/java/com/android/server/pm/PackageDexOptimizer.java
index 1ef4a9fa5849..acdcc72c7f71 100644
--- a/services/core/java/com/android/server/pm/PackageDexOptimizer.java
+++ b/services/core/java/com/android/server/pm/PackageDexOptimizer.java
@@ -219,19 +219,20 @@ class PackageDexOptimizer {
final String dexoptType;
String oatDir = null;
- switch (dexoptNeeded) {
+ boolean isOdexLocation = (dexoptNeeded < 0);
+ switch (Math.abs(dexoptNeeded)) {
case DexFile.NO_DEXOPT_NEEDED:
continue;
- case DexFile.DEX2OAT_NEEDED:
+ case DexFile.DEX2OAT_FROM_SCRATCH:
+ case DexFile.DEX2OAT_FOR_BOOT_IMAGE:
+ case DexFile.DEX2OAT_FOR_FILTER:
+ case DexFile.DEX2OAT_FOR_RELOCATION:
dexoptType = "dex2oat";
oatDir = createOatDirIfSupported(pkg, dexCodeInstructionSet);
break;
- case DexFile.PATCHOAT_NEEDED:
+ case DexFile.PATCHOAT_FOR_RELOCATION:
dexoptType = "patchoat";
break;
- case DexFile.SELF_PATCHOAT_NEEDED:
- dexoptType = "self patchoat";
- break;
default:
throw new IllegalStateException("Invalid dexopt:" + dexoptNeeded);
}
@@ -383,7 +384,7 @@ class PackageDexOptimizer {
protected int adjustDexoptNeeded(int dexoptNeeded) {
// Ensure compilation, no matter the current state.
// TODO: The return value is wrong when patchoat is needed.
- return DexFile.DEX2OAT_NEEDED;
+ return DexFile.DEX2OAT_FROM_SCRATCH;
}
}
}