Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5dd07ce authored by tyiu's avatar tyiu Committed by Timothy Yiu
Browse files

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
parent c018edbd
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -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,
            },
        },
    },
}

+5 −3
Original line number Diff line number Diff line
@@ -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(...);