diff options
author | 2023-10-27 00:08:37 +0000 | |
---|---|---|
committer | 2023-11-01 20:56:45 +0000 | |
commit | d5dd07ced9e823a231ebe5755773caee4a87c17f (patch) | |
tree | 51a3bbf32a16b78175c0869a8934c0ede2d544fa | |
parent | c018edbdad81e8f4efa41a77f56d66d536e123bf (diff) |
Add config for FULL_SYSTEM_OPTIMIZE_JAVA
FULL_SYSTEM_OPTIMIZE_JAVA allows device to enable full system java
optimization. FULL_SYSTEM_OPTIMIZE_JAVA will override
SYSTEM_OPTIMIZE_JAVA.
Modified proguard flags and kept classes1 that are necessary when
optimization is enabled.
Bug: 300514883
Test: local m, device boot and briefly tested
Change-Id: If4555dcc7bc2d2c1f8fb9bee044de666d6db04a7
Merged-In: If4555dcc7bc2d2c1f8fb9bee044de666d6db04a7
-rw-r--r-- | services/Android.bp | 12 | ||||
-rw-r--r-- | services/proguard.flags | 8 |
2 files changed, 16 insertions, 4 deletions
diff --git a/services/Android.bp b/services/Android.bp index 3a0428e0a9f8..ad9dcdcf8816 100644 --- a/services/Android.bp +++ b/services/Android.bp @@ -43,7 +43,10 @@ soong_config_module_type { name: "system_optimized_java_defaults", module_type: "java_defaults", config_namespace: "ANDROID", - bool_variables: ["SYSTEM_OPTIMIZE_JAVA"], + bool_variables: [ + "SYSTEM_OPTIMIZE_JAVA", + "FULL_SYSTEM_OPTIMIZE_JAVA", + ], properties: ["optimize"], } @@ -55,6 +58,7 @@ system_optimized_java_defaults { enabled: true, // TODO(b/210510433): Enable optimizations after improving // retracing infra. + // See also FULL_SYSTEM_OPTIMIZE_JAVA. optimize: false, shrink: true, ignore_warnings: false, @@ -77,6 +81,12 @@ system_optimized_java_defaults { }, }, }, + // Allow form factors to opt-in full system java optimization + FULL_SYSTEM_OPTIMIZE_JAVA: { + optimize: { + optimize: true, + }, + }, }, } diff --git a/services/proguard.flags b/services/proguard.flags index e11e613adb5c..261bb7cacdc4 100644 --- a/services/proguard.flags +++ b/services/proguard.flags @@ -47,6 +47,11 @@ -keep,allowoptimization,allowaccessmodification class com.android.net.module.util.* { *; } -keep,allowoptimization,allowaccessmodification public class com.android.server.net.IpConfigStore { *; } -keep,allowoptimization,allowaccessmodification public class com.android.server.net.BaseNetworkObserver { *; } +-keep,allowoptimization,allowaccessmodification class com.android.server.display.feature.DisplayManagerFlags { *; } +-keep,allowoptimization,allowaccessmodification class android.app.admin.flags.FeatureFlagsImpl { *; } +-keep,allowoptimization,allowaccessmodification class com.android.server.input.NativeInputManagerService$NativeImpl { *; } +-keep,allowoptimization,allowaccessmodification class com.android.server.ThreadPriorityBooster { *; } +-keep,allowaccessmodification class android.app.admin.flags.Flags { *; } # Referenced via CarServiceHelperService in car-frameworks-service (avoid removing) -keep public class com.android.server.utils.Slogf { *; } @@ -99,9 +104,6 @@ -keep,allowoptimization,allowaccessmodification class com.android.server.input.InputManagerService { <methods>; } --keep,allowoptimization,allowaccessmodification class com.android.server.input.NativeInputManagerService$NativeImpl { - <methods>; -} -keep,allowoptimization,allowaccessmodification class com.android.server.usb.UsbHostManager { *** usbDeviceRemoved(...); *** usbDeviceAdded(...); |