From 5e57f64c1b6e0e1ecae0fd64758df49cf26ef7aa Mon Sep 17 00:00:00 2001 From: Kevin Jeon Date: Tue, 25 Jan 2022 22:45:02 +0000 Subject: [PATCH] Annotate dump methods with @NeverCompile [5/5] This change annotates dump/debug methods in services.odex that are larger than 10000 bytes with NeverCompile so that they will not be compiled. This results in an overall ~1% decrease in the size of services.odex. Bug: 215417388 Test: Build and check that these methods are not called during boot or app startup. Change-Id: Ic14b273a66a30ad63ba9a82c0b45fac9beb7589a --- .../com/android/server/net/NetworkPolicyManagerService.java | 3 +++ .../core/java/com/android/server/tv/TvInputManagerService.java | 3 +++ services/usb/java/com/android/server/usb/UsbService.java | 3 +++ 3 files changed, 9 insertions(+) diff --git a/services/core/java/com/android/server/net/NetworkPolicyManagerService.java b/services/core/java/com/android/server/net/NetworkPolicyManagerService.java index bb229022ac0bf..5cddcb6b5c1fe 100644 --- a/services/core/java/com/android/server/net/NetworkPolicyManagerService.java +++ b/services/core/java/com/android/server/net/NetworkPolicyManagerService.java @@ -255,6 +255,8 @@ import com.android.server.connectivity.MultipathPolicyTracker; import com.android.server.usage.AppStandbyInternal; import com.android.server.usage.AppStandbyInternal.AppIdleStateChangeListener; +import dalvik.annotation.optimization.NeverCompile; + import libcore.io.IoUtils; import java.io.File; @@ -3734,6 +3736,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub { return 0; } + @NeverCompile // Avoid size overhead of debugging code. @Override protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) { if (!DumpUtils.checkDumpPermission(mContext, TAG, writer)) return; diff --git a/services/core/java/com/android/server/tv/TvInputManagerService.java b/services/core/java/com/android/server/tv/TvInputManagerService.java index e02fabd7366be..b95d3726af074 100755 --- a/services/core/java/com/android/server/tv/TvInputManagerService.java +++ b/services/core/java/com/android/server/tv/TvInputManagerService.java @@ -102,6 +102,8 @@ import com.android.internal.util.IndentingPrintWriter; import com.android.server.IoThread; import com.android.server.SystemService; +import dalvik.annotation.optimization.NeverCompile; + import java.io.File; import java.io.FileDescriptor; import java.io.FileNotFoundException; @@ -2639,6 +2641,7 @@ public final class TvInputManagerService extends SystemService { } } + @NeverCompile // Avoid size overhead of debugging code. @Override @SuppressWarnings("resource") protected void dump(FileDescriptor fd, final PrintWriter writer, String[] args) { diff --git a/services/usb/java/com/android/server/usb/UsbService.java b/services/usb/java/com/android/server/usb/UsbService.java index f3308bb74501b..c0ecf58087fae 100644 --- a/services/usb/java/com/android/server/usb/UsbService.java +++ b/services/usb/java/com/android/server/usb/UsbService.java @@ -63,6 +63,8 @@ import com.android.server.FgThread; import com.android.server.SystemServerInitThreadPool; import com.android.server.SystemService; +import dalvik.annotation.optimization.NeverCompile; + import java.io.File; import java.io.FileDescriptor; import java.io.PrintWriter; @@ -883,6 +885,7 @@ public class UsbService extends IUsbManager.Stub { } } + @NeverCompile // Avoid size overhead of debugging code. @Override public void dump(FileDescriptor fd, PrintWriter writer, String[] args) { if (!DumpUtils.checkDumpPermission(mContext, TAG, writer)) return;