Remove policy for source classes with final instance fields

Change-Id: I15ab81672a305d649c1603901093f96cba276765
diff --git a/src/main/java/com/android/tools/r8/verticalclassmerging/VerticalClassMergerPolicyExecutor.java b/src/main/java/com/android/tools/r8/verticalclassmerging/VerticalClassMergerPolicyExecutor.java
index 2691d18..264441e 100644
--- a/src/main/java/com/android/tools/r8/verticalclassmerging/VerticalClassMergerPolicyExecutor.java
+++ b/src/main/java/com/android/tools/r8/verticalclassmerging/VerticalClassMergerPolicyExecutor.java
@@ -18,7 +18,6 @@
 import com.android.tools.r8.verticalclassmerging.policies.NoDirectlyInstantiatedClassesPolicy;
 import com.android.tools.r8.verticalclassmerging.policies.NoEnclosingMethodAttributesPolicy;
 import com.android.tools.r8.verticalclassmerging.policies.NoFieldResolutionChangesPolicy;
-import com.android.tools.r8.verticalclassmerging.policies.NoFinalSourceInstanceFieldsWithConstructorInliningPolicy;
 import com.android.tools.r8.verticalclassmerging.policies.NoIllegalAccessesPolicy;
 import com.android.tools.r8.verticalclassmerging.policies.NoInnerClassAttributesPolicy;
 import com.android.tools.r8.verticalclassmerging.policies.NoInterfacesWithInvokeSpecialToDefaultMethodIntoClassPolicy;
@@ -70,7 +69,6 @@
     Collection<Policy> policies =
         List.of(
             new NoDirectlyInstantiatedClassesPolicy(appView),
-            new NoFinalSourceInstanceFieldsWithConstructorInliningPolicy(appView, mode),
             new NoInterfacesWithUnknownSubtypesPolicy(appView),
             new NoKeptClassesPolicy(appView),
             new SameFeatureSplitPolicy(appView),
diff --git a/src/main/java/com/android/tools/r8/verticalclassmerging/policies/NoFinalSourceInstanceFieldsWithConstructorInliningPolicy.java b/src/main/java/com/android/tools/r8/verticalclassmerging/policies/NoFinalSourceInstanceFieldsWithConstructorInliningPolicy.java
deleted file mode 100644
index 14b9ece..0000000
--- a/src/main/java/com/android/tools/r8/verticalclassmerging/policies/NoFinalSourceInstanceFieldsWithConstructorInliningPolicy.java
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright (c) 2024, the R8 project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-package com.android.tools.r8.verticalclassmerging.policies;
-
-import com.android.tools.r8.classmerging.ClassMergerMode;
-import com.android.tools.r8.graph.AppView;
-import com.android.tools.r8.graph.DexEncodedField;
-import com.android.tools.r8.shaking.AppInfoWithLiveness;
-import com.android.tools.r8.utils.InternalOptions;
-import com.android.tools.r8.verticalclassmerging.VerticalMergeGroup;
-import com.google.common.collect.Iterables;
-
-public class NoFinalSourceInstanceFieldsWithConstructorInliningPolicy
-    extends VerticalClassMergerPolicy {
-
-  private final ClassMergerMode mode;
-  private final InternalOptions options;
-
-  public NoFinalSourceInstanceFieldsWithConstructorInliningPolicy(
-      AppView<AppInfoWithLiveness> appView, ClassMergerMode mode) {
-    this.mode = mode;
-    this.options = appView.options();
-  }
-
-  @Override
-  public boolean canMerge(VerticalMergeGroup group) {
-    return group.getSource().isInterface()
-        || !options.canInitNewInstanceUsingSuperclassConstructor()
-        || Iterables.isEmpty(group.getSource().instanceFields(DexEncodedField::isFinal));
-  }
-
-  @Override
-  public boolean shouldSkipPolicy() {
-    return mode.isInitial();
-  }
-
-  @Override
-  public String getName() {
-    return "NoFinalSourceInstanceFieldsWithConstructorInliningPolicy";
-  }
-}