Move the enabled check for BackportedMethodRewriter into the rewriter

Bug: 147139686
Change-Id: Ie40475da6ae6319eb956c592201aff64c14651a1
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java b/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
index e501c31..f3dd806 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
@@ -255,10 +255,7 @@
         ((options.desugarState == DesugarState.ON) && enableTwrCloseResourceDesugaring())
             ? new TwrCloseResourceRewriter(appView, this)
             : null;
-    this.backportedMethodRewriter =
-        options.desugarState == DesugarState.ON
-            ? new BackportedMethodRewriter(appView, this)
-            : null;
+    this.backportedMethodRewriter = new BackportedMethodRewriter(appView, this);
     this.covariantReturnTypeAnnotationTransformer =
         options.processCovariantReturnTypeAnnotations
             ? new CovariantReturnTypeAnnotationTransformer(this, appView.dexItemFactory())
@@ -444,9 +441,7 @@
 
   private void synthesizeJava8UtilityClass(
       Builder<?> builder, ExecutorService executorService) throws ExecutionException {
-    if (backportedMethodRewriter != null) {
-      backportedMethodRewriter.synthesizeUtilityClasses(builder, executorService);
-    }
+    backportedMethodRewriter.synthesizeUtilityClasses(builder, executorService);
   }
 
   private void processCovariantReturnTypeAnnotations(Builder<?> builder) {
@@ -1295,9 +1290,7 @@
     if (options.desugarState == DesugarState.ON && enableTryWithResourcesDesugaring()) {
       codeRewriter.rewriteThrowableAddAndGetSuppressed(code);
     }
-    if (backportedMethodRewriter != null) {
-      backportedMethodRewriter.desugar(code);
-    }
+    backportedMethodRewriter.desugar(code);
 
     stringConcatRewriter.desugarStringConcats(method.method, code);
 
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/BackportedMethodRewriter.java b/src/main/java/com/android/tools/r8/ir/desugar/BackportedMethodRewriter.java
index 584bfc4..a1df648 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/BackportedMethodRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/BackportedMethodRewriter.java
@@ -44,6 +44,7 @@
 import com.android.tools.r8.origin.SynthesizedOrigin;
 import com.android.tools.r8.utils.AndroidApiLevel;
 import com.android.tools.r8.utils.InternalOptions;
+import com.android.tools.r8.utils.InternalOptions.DesugarState;
 import com.android.tools.r8.utils.StringDiagnostic;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
@@ -70,7 +71,7 @@
   private final IRConverter converter;
   private final DexItemFactory factory;
   private final RewritableMethods rewritableMethods;
-  private final boolean enable;
+  private final boolean enabled;
 
   private final Set<DexType> holders = Sets.newConcurrentHashSet();
   private final Map<DexMethod, MethodProvider> methodProviders = new ConcurrentHashMap<>();
@@ -84,8 +85,9 @@
     // the highest known API level when the compiler is built. This ensures that when this is used
     // by the Android Platform build (which normally use an API level of 10000) there will be
     // no rewriting of backported methods. See b/147480264.
-    this.enable =
-        !this.rewritableMethods.isEmpty()
+    this.enabled =
+        appView.options().desugarState == DesugarState.ON
+            && !this.rewritableMethods.isEmpty()
             && appView.options().minApiLevel <= AndroidApiLevel.LATEST.getLevel();
   }
 
@@ -101,7 +103,7 @@
   }
 
   public void desugar(IRCode code) {
-    if (!enable) {
+    if (!enabled) {
       return; // Nothing to do!
     }
 
@@ -183,6 +185,9 @@
 
   public void synthesizeUtilityClasses(Builder<?> builder, ExecutorService executorService)
       throws ExecutionException {
+    if (!enabled) {
+      return;
+    }
     if (appView.options().isDesugaredLibraryCompilation()) {
       synthesizeEmulatedDispatchMethods(builder);
     } else {