Rename existing method resolution methods to legacy

Bug: b/226170842
Bug: b/214382176
Change-Id: I048d5e04e06ba01d45b8c12306e5e28c3f303284
diff --git a/src/main/java/com/android/tools/r8/graph/AppInfoWithClassHierarchy.java b/src/main/java/com/android/tools/r8/graph/AppInfoWithClassHierarchy.java
index 81979c8..863446f 100644
--- a/src/main/java/com/android/tools/r8/graph/AppInfoWithClassHierarchy.java
+++ b/src/main/java/com/android/tools/r8/graph/AppInfoWithClassHierarchy.java
@@ -592,7 +592,7 @@
   // TODO(b/155968472): This should take a parameter `boolean isInterface` and use resolveMethod().
   public DexEncodedMethod lookupStaticTarget(DexMethod method, DexProgramClass context) {
     assert checkIfObsolete();
-    return unsafeResolveMethodDueToDexFormat(method).lookupInvokeStaticTarget(context, this);
+    return unsafeResolveMethodDueToDexFormatLegacy(method).lookupInvokeStaticTarget(context, this);
   }
 
   // TODO(b/155968472): This should take a parameter `boolean isInterface` and use resolveMethod().
@@ -613,7 +613,7 @@
   // TODO(b/155968472): This should take a parameter `boolean isInterface` and use resolveMethod().
   public DexClassAndMethod lookupSuperTarget(DexMethod method, DexProgramClass context) {
     assert checkIfObsolete();
-    return unsafeResolveMethodDueToDexFormat(method).lookupInvokeSuperTarget(context, this);
+    return unsafeResolveMethodDueToDexFormatLegacy(method).lookupInvokeSuperTarget(context, this);
   }
 
   // TODO(b/155968472): This should take a parameter `boolean isInterface` and use resolveMethod().
@@ -632,7 +632,7 @@
   // TODO(b/155968472): This should take a parameter `boolean isInterface` and use resolveMethod().
   public DexEncodedMethod lookupDirectTarget(DexMethod method, DexProgramClass context) {
     assert checkIfObsolete();
-    return unsafeResolveMethodDueToDexFormat(method).lookupInvokeDirectTarget(context, this);
+    return unsafeResolveMethodDueToDexFormatLegacy(method).lookupInvokeDirectTarget(context, this);
   }
 
   // TODO(b/155968472): This should take a parameter `boolean isInterface` and use resolveMethod().
@@ -646,102 +646,105 @@
    * <p>This is to overcome the shortcoming of the DEX file format that does not allow to encode the
    * kind of a method reference.
    */
-  public MethodResolutionResult unsafeResolveMethodDueToDexFormat(DexMethod method) {
+  public MethodResolutionResult unsafeResolveMethodDueToDexFormatLegacy(DexMethod method) {
     assert checkIfObsolete();
     return MethodResolution.createLegacy(this::definitionFor, dexItemFactory())
         .unsafeResolveMethodDueToDexFormat(method);
   }
 
-  public MethodResolutionResult resolveMethod(DexMethod invokedMethod, boolean isInterface) {
+  public MethodResolutionResult resolveMethodLegacy(DexMethod invokedMethod, boolean isInterface) {
     assert checkIfObsolete();
-    return resolveMethodOn(invokedMethod.getHolderType(), invokedMethod, isInterface);
+    return resolveMethodOnLegacy(invokedMethod.getHolderType(), invokedMethod, isInterface);
   }
 
-  public MethodResolutionResult resolveMethodOn(DexClass clazz, DexMethod method) {
+  public MethodResolutionResult resolveMethodOnLegacy(DexClass clazz, DexMethod method) {
     assert checkIfObsolete();
     return clazz.isInterface()
-        ? resolveMethodOnInterface(clazz, method)
-        : resolveMethodOnClass(clazz, method);
+        ? resolveMethodOnInterfaceLegacy(clazz, method)
+        : resolveMethodOnClassLegacy(clazz, method);
   }
 
-  public MethodResolutionResult resolveMethodOn(
+  public MethodResolutionResult resolveMethodOnLegacy(
       DexClass clazz, DexMethodSignature methodSignature) {
     assert checkIfObsolete();
     return clazz.isInterface()
-        ? resolveMethodOnInterface(clazz, methodSignature)
-        : resolveMethodOnClass(clazz, methodSignature);
+        ? resolveMethodOnInterfaceLegacy(clazz, methodSignature)
+        : resolveMethodOnClassLegacy(clazz, methodSignature);
   }
 
-  public MethodResolutionResult resolveMethodOn(
+  public MethodResolutionResult resolveMethodOnLegacy(
       DexType holder, DexMethod method, boolean isInterface) {
     assert checkIfObsolete();
     return isInterface
-        ? resolveMethodOnInterface(holder, method)
-        : resolveMethodOnClass(holder, method);
+        ? resolveMethodOnInterfaceLegacy(holder, method)
+        : resolveMethodOnClassLegacy(holder, method);
   }
 
-  public MethodResolutionResult resolveMethodOnClassHolder(DexMethod method) {
+  public MethodResolutionResult resolveMethodOnClassHolderLegacy(DexMethod method) {
     assert checkIfObsolete();
-    return resolveMethodOnClass(method.getHolderType(), method);
+    return resolveMethodOnClassLegacy(method.getHolderType(), method);
   }
 
-  public MethodResolutionResult resolveMethodOnClass(DexType holder, DexMethod method) {
+  public MethodResolutionResult resolveMethodOnClassLegacy(DexType holder, DexMethod method) {
     assert checkIfObsolete();
-    return resolveMethodOnClass(holder, method.getProto(), method.getName());
+    return resolveMethodOnClassLegacy(holder, method.getProto(), method.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnClass(DexType holder, DexMethodSignature signature) {
+  public MethodResolutionResult resolveMethodOnClassLegacy(
+      DexType holder, DexMethodSignature signature) {
     assert checkIfObsolete();
-    return resolveMethodOnClass(holder, signature.getProto(), signature.getName());
+    return resolveMethodOnClassLegacy(holder, signature.getProto(), signature.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnClass(
+  public MethodResolutionResult resolveMethodOnClassLegacy(
       DexType holder, DexProto proto, DexString name) {
     assert checkIfObsolete();
     return MethodResolution.createLegacy(this::definitionFor, dexItemFactory())
         .resolveMethodOnClass(holder, proto, name);
   }
 
-  public MethodResolutionResult resolveMethodOnClass(DexClass clazz, DexMethod method) {
+  public MethodResolutionResult resolveMethodOnClassLegacy(DexClass clazz, DexMethod method) {
     assert checkIfObsolete();
-    return resolveMethodOnClass(clazz, method.getProto(), method.getName());
+    return resolveMethodOnClassLegacy(clazz, method.getProto(), method.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnClass(DexClass clazz, DexMethodSignature signature) {
+  public MethodResolutionResult resolveMethodOnClassLegacy(
+      DexClass clazz, DexMethodSignature signature) {
     assert checkIfObsolete();
-    return resolveMethodOnClass(clazz, signature.getProto(), signature.getName());
+    return resolveMethodOnClassLegacy(clazz, signature.getProto(), signature.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnClass(
+  public MethodResolutionResult resolveMethodOnClassLegacy(
       DexClass clazz, DexProto proto, DexString name) {
     assert checkIfObsolete();
     return MethodResolution.createLegacy(this::definitionFor, dexItemFactory())
         .resolveMethodOnClass(clazz, proto, name);
   }
 
-  public MethodResolutionResult resolveMethodOnInterfaceHolder(DexMethod method) {
+  public MethodResolutionResult resolveMethodOnInterfaceHolderLegacy(DexMethod method) {
     assert checkIfObsolete();
-    return resolveMethodOnInterface(method.getHolderType(), method);
+    return resolveMethodOnInterfaceLegacy(method.getHolderType(), method);
   }
 
-  public MethodResolutionResult resolveMethodOnInterface(DexType holder, DexMethod method) {
+  public MethodResolutionResult resolveMethodOnInterfaceLegacy(DexType holder, DexMethod method) {
     assert checkIfObsolete();
     return MethodResolution.createLegacy(this::definitionFor, dexItemFactory())
         .resolveMethodOnInterface(holder, method.getProto(), method.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnInterface(DexClass clazz, DexMethod method) {
+  public MethodResolutionResult resolveMethodOnInterfaceLegacy(DexClass clazz, DexMethod method) {
     assert checkIfObsolete();
-    return resolveMethodOnInterface(clazz, method.getProto(), method.getName());
+    return resolveMethodOnInterfaceLegacy(clazz, method.getProto(), method.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnInterface(
+  public MethodResolutionResult resolveMethodOnInterfaceLegacy(
       DexClass clazz, DexMethodSignature methodSignature) {
     assert checkIfObsolete();
-    return resolveMethodOnInterface(clazz, methodSignature.getProto(), methodSignature.getName());
+    return resolveMethodOnInterfaceLegacy(
+        clazz, methodSignature.getProto(), methodSignature.getName());
   }
 
-  public MethodResolutionResult resolveMethodOnInterface(
+  public MethodResolutionResult resolveMethodOnInterfaceLegacy(
       DexClass clazz, DexProto proto, DexString name) {
     assert checkIfObsolete();
     return MethodResolution.createLegacy(this::definitionFor, dexItemFactory())
diff --git a/src/main/java/com/android/tools/r8/horizontalclassmerging/VirtualMethodMerger.java b/src/main/java/com/android/tools/r8/horizontalclassmerging/VirtualMethodMerger.java
index 6c8703b..6abb160 100644
--- a/src/main/java/com/android/tools/r8/horizontalclassmerging/VirtualMethodMerger.java
+++ b/src/main/java/com/android/tools/r8/horizontalclassmerging/VirtualMethodMerger.java
@@ -60,7 +60,7 @@
       SingleResolutionResult<?> resolutionResult =
           appView
               .appInfo()
-              .resolveMethodOnClass(group.getSuperType(), template)
+              .resolveMethodOnClassLegacy(group.getSuperType(), template)
               .asSingleResolution();
       if (resolutionResult == null || resolutionResult.getResolvedMethod().isAbstract()) {
         // If there is no super method or the method is abstract it should not be called.
diff --git a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoClassInitializerCycles.java b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoClassInitializerCycles.java
index fa9bbde..9856e0b 100644
--- a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoClassInitializerCycles.java
+++ b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoClassInitializerCycles.java
@@ -487,7 +487,7 @@
         DexMethod rewrittenMethod =
             appView.graphLens().lookupInvokeDirect(method, getContext()).getReference();
         MethodResolutionResult resolutionResult =
-            appView.appInfo().resolveMethodOnClassHolder(rewrittenMethod);
+            appView.appInfo().resolveMethodOnClassHolderLegacy(rewrittenMethod);
         if (resolutionResult.isSingleResolution()
             && resolutionResult.getResolvedHolder().isProgramClass()) {
           enqueueMethod(resolutionResult.getResolvedProgramMethod());
@@ -499,7 +499,10 @@
         DexMethod rewrittenMethod =
             appView.graphLens().lookupInvokeInterface(method, getContext()).getReference();
         DexClassAndMethod resolvedMethod =
-            appView.appInfo().resolveMethodOnInterfaceHolder(rewrittenMethod).getResolutionPair();
+            appView
+                .appInfo()
+                .resolveMethodOnInterfaceHolderLegacy(rewrittenMethod)
+                .getResolutionPair();
         if (resolvedMethod != null) {
           fail();
         }
@@ -512,7 +515,7 @@
         ProgramMethod resolvedMethod =
             appView
                 .appInfo()
-                .unsafeResolveMethodDueToDexFormat(rewrittenMethod)
+                .unsafeResolveMethodDueToDexFormatLegacy(rewrittenMethod)
                 .getResolvedProgramMethod();
         if (resolvedMethod != null) {
           triggerClassInitializerIfNotAlreadyTriggeredInContext(resolvedMethod.getHolder());
@@ -537,7 +540,7 @@
         DexMethod rewrittenMethod =
             appView.graphLens().lookupInvokeVirtual(method, getContext()).getReference();
         DexClassAndMethod resolvedMethod =
-            appView.appInfo().resolveMethodOnClassHolder(rewrittenMethod).getResolutionPair();
+            appView.appInfo().resolveMethodOnClassHolderLegacy(rewrittenMethod).getResolutionPair();
         if (resolvedMethod != null) {
           if (!resolvedMethod.getHolder().isEffectivelyFinal(appView)) {
             fail();
diff --git a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoVirtualMethodMerging.java b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoVirtualMethodMerging.java
index fecb888..07b2fc7 100644
--- a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoVirtualMethodMerging.java
+++ b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/NoVirtualMethodMerging.java
@@ -108,7 +108,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfo()
-            .resolveMethodOnClass(superType, method.getReference())
+            .resolveMethodOnClassLegacy(superType, method.getReference())
             .asSingleResolution();
     return resolutionResult != null && !resolutionResult.getResolvedMethod().isAbstract();
   }
@@ -121,7 +121,7 @@
           SingleResolutionResult<?> resolutionResult =
               appView
                   .appInfo()
-                  .resolveMethodOnInterface(interfaceType, method.getReference())
+                  .resolveMethodOnInterfaceLegacy(interfaceType, method.getReference())
                   .asSingleResolution();
           return resolutionResult != null && !resolutionResult.getResolvedMethod().isAbstract();
         });
diff --git a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/PreventClassMethodAndDefaultMethodCollisions.java b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/PreventClassMethodAndDefaultMethodCollisions.java
index ca52f7c..2a3602c 100644
--- a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/PreventClassMethodAndDefaultMethodCollisions.java
+++ b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/PreventClassMethodAndDefaultMethodCollisions.java
@@ -171,7 +171,7 @@
         if (clazzReserved.contains(signature)) {
           DexMethod template = signature.withHolder(clazz, appView.dexItemFactory());
           SingleResolutionResult<?> result =
-              appView.appInfo().resolveMethodOnClass(clazz, template).asSingleResolution();
+              appView.appInfo().resolveMethodOnClassLegacy(clazz, template).asSingleResolution();
           if (result == null || result.getResolvedHolder().isInterface()) {
             category = MethodCategory.KEEP_ABSENT;
           }
diff --git a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/deadlock/SingleCallerInformation.java b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/deadlock/SingleCallerInformation.java
index 95f0385..bbf486f 100644
--- a/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/deadlock/SingleCallerInformation.java
+++ b/src/main/java/com/android/tools/r8/horizontalclassmerging/policies/deadlock/SingleCallerInformation.java
@@ -216,7 +216,7 @@
         ProgramMethod target =
             appView
                 .appInfo()
-                .unsafeResolveMethodDueToDexFormat(rewrittenMethod)
+                .unsafeResolveMethodDueToDexFormatLegacy(rewrittenMethod)
                 .getResolvedProgramMethod();
         if (target != null) {
           recordDispatchTarget(target);
diff --git a/src/main/java/com/android/tools/r8/ir/analysis/ClassInitializationAnalysis.java b/src/main/java/com/android/tools/r8/ir/analysis/ClassInitializationAnalysis.java
index 670f74a..9a7ddd8 100644
--- a/src/main/java/com/android/tools/r8/ir/analysis/ClassInitializationAnalysis.java
+++ b/src/main/java/com/android/tools/r8/ir/analysis/ClassInitializationAnalysis.java
@@ -333,7 +333,7 @@
       }
       DexMethod method = instruction.getInvokedMethod();
       MethodResolutionResult resolutionResult =
-          appView.appInfo().resolveMethodOnInterface(method.holder, method);
+          appView.appInfo().resolveMethodOnInterfaceLegacy(method.holder, method);
       if (!resolutionResult.isSingleResolution()) {
         return false;
       }
@@ -394,7 +394,7 @@
         return false;
       }
       MethodResolutionResult resolutionResult =
-          appView.appInfo().resolveMethodOn(superType, method, instruction.isInterface);
+          appView.appInfo().resolveMethodOnLegacy(superType, method, instruction.isInterface);
       if (!resolutionResult.isSingleResolution()) {
         return false;
       }
@@ -431,7 +431,7 @@
       }
       DexMethod method = instruction.getInvokedMethod();
       MethodResolutionResult resolutionResult =
-          appView.appInfo().resolveMethodOnClass(method.holder, method);
+          appView.appInfo().resolveMethodOnClassLegacy(method.holder, method);
       if (!resolutionResult.isSingleResolution()) {
         return false;
       }
diff --git a/src/main/java/com/android/tools/r8/ir/code/FieldInstruction.java b/src/main/java/com/android/tools/r8/ir/code/FieldInstruction.java
index b8eb09d..552ebf3 100644
--- a/src/main/java/com/android/tools/r8/ir/code/FieldInstruction.java
+++ b/src/main/java/com/android/tools/r8/ir/code/FieldInstruction.java
@@ -202,7 +202,7 @@
       DexItemFactory dexItemFactory = appView.dexItemFactory();
       DexEncodedMethod resolutionResult =
           appInfo
-              .resolveMethodOnClass(clazz, dexItemFactory.objectMembers.finalize)
+              .resolveMethodOnClassLegacy(clazz, dexItemFactory.objectMembers.finalize)
               .getSingleTarget();
       return resolutionResult != null && resolutionResult.isProgramMethod(appView);
     }
diff --git a/src/main/java/com/android/tools/r8/ir/code/InvokeMethod.java b/src/main/java/com/android/tools/r8/ir/code/InvokeMethod.java
index 4e77680..ec23162 100644
--- a/src/main/java/com/android/tools/r8/ir/code/InvokeMethod.java
+++ b/src/main/java/com/android/tools/r8/ir/code/InvokeMethod.java
@@ -151,7 +151,7 @@
       }
     }
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethod(method, getInterfaceBit());
+        appView.appInfo().resolveMethodLegacy(method, getInterfaceBit());
     LookupResult lookupResult;
     if (refinedReceiverUpperBound != null) {
       lookupResult =
diff --git a/src/main/java/com/android/tools/r8/ir/code/InvokeMethodWithReceiver.java b/src/main/java/com/android/tools/r8/ir/code/InvokeMethodWithReceiver.java
index c13800c..668d515 100644
--- a/src/main/java/com/android/tools/r8/ir/code/InvokeMethodWithReceiver.java
+++ b/src/main/java/com/android/tools/r8/ir/code/InvokeMethodWithReceiver.java
@@ -200,7 +200,7 @@
     SingleResolutionResult<?> resolutionResult =
         appViewWithClassHierarchy
             .appInfo()
-            .resolveMethod(getInvokedMethod(), getInterfaceBit())
+            .resolveMethodLegacy(getInvokedMethod(), getInterfaceBit())
             .asSingleResolution();
     if (resolutionResult == null) {
       return true;
diff --git a/src/main/java/com/android/tools/r8/ir/code/InvokeStatic.java b/src/main/java/com/android/tools/r8/ir/code/InvokeStatic.java
index f39baa4..b405dbb 100644
--- a/src/main/java/com/android/tools/r8/ir/code/InvokeStatic.java
+++ b/src/main/java/com/android/tools/r8/ir/code/InvokeStatic.java
@@ -199,7 +199,7 @@
     SingleResolutionResult<?> resolutionResult =
         appViewWithLiveness
             .appInfo()
-            .resolveMethod(getInvokedMethod(), isInterface)
+            .resolveMethodLegacy(getInvokedMethod(), isInterface)
             .asSingleResolution();
 
     // Verify that the target method is present.
diff --git a/src/main/java/com/android/tools/r8/ir/code/NewInstance.java b/src/main/java/com/android/tools/r8/ir/code/NewInstance.java
index baae8e5..85bae5c 100644
--- a/src/main/java/com/android/tools/r8/ir/code/NewInstance.java
+++ b/src/main/java/com/android/tools/r8/ir/code/NewInstance.java
@@ -194,7 +194,7 @@
     MethodResolutionResult finalizeResolutionResult =
         appViewWithClassHierarchy
             .appInfo()
-            .resolveMethodOnClass(clazz, dexItemFactory.objectMembers.finalize);
+            .resolveMethodOnClassLegacy(clazz, dexItemFactory.objectMembers.finalize);
     if (finalizeResolutionResult.isSingleResolution()) {
       DexMethod finalizeMethod = finalizeResolutionResult.getSingleTarget().getReference();
       if (finalizeMethod != dexItemFactory.enumMembers.finalize
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/callgraph/InvokeExtractor.java b/src/main/java/com/android/tools/r8/ir/conversion/callgraph/InvokeExtractor.java
index edd4f14..3fc7ad0 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/callgraph/InvokeExtractor.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/callgraph/InvokeExtractor.java
@@ -78,7 +78,7 @@
     if (type == Invoke.Type.INTERFACE || type == Invoke.Type.VIRTUAL) {
       // For virtual and interface calls add all potential targets that could be called.
       MethodResolutionResult resolutionResult =
-          appView.appInfo().resolveMethod(method, type == Invoke.Type.INTERFACE);
+          appView.appInfo().resolveMethodLegacy(method, type == Invoke.Type.INTERFACE);
       DexClassAndMethod target = resolutionResult.getResolutionPair();
       if (target != null) {
         processInvokeWithDynamicDispatch(type, target, context);
@@ -115,7 +115,7 @@
             target,
             method -> {
               MethodResolutionResult resolution =
-                  appView.appInfo().resolveMethod(method, isInterface);
+                  appView.appInfo().resolveMethodLegacy(method, isInterface);
               if (resolution.isVirtualTarget()) {
                 LookupResult lookupResult =
                     resolution.lookupVirtualDispatchTargets(context.getHolder(), appView.appInfo());
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/LambdaClass.java b/src/main/java/com/android/tools/r8/ir/desugar/LambdaClass.java
index 012c31c..ac5addd 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/LambdaClass.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/LambdaClass.java
@@ -373,7 +373,7 @@
     assert descriptor.verifyTargetFoundInClass(accessedFrom.getHolderType());
     if (implHandle.type.isInvokeStatic()) {
       MethodResolutionResult resolution =
-          appView.appInfoForDesugaring().resolveMethod(implMethod, implHandle.isInterface);
+          appView.appInfoForDesugaring().resolveMethodLegacy(implMethod, implHandle.isInterface);
       if (resolution.isFailedResolution()) {
         return new InvalidLambdaImplTarget(
             implMethod,
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/LambdaDescriptor.java b/src/main/java/com/android/tools/r8/ir/desugar/LambdaDescriptor.java
index bc7a544..d6b10b0 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/LambdaDescriptor.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/LambdaDescriptor.java
@@ -123,7 +123,7 @@
       case INVOKE_INSTANCE: {
           DexEncodedMethod target =
               appInfo
-                  .resolveMethodOn(getImplReceiverType(), method, implHandle.isInterface)
+                  .resolveMethodOnLegacy(getImplReceiverType(), method, implHandle.isInterface)
                   .getSingleTarget();
         if (target == null) {
             target = appInfo.lookupDirectTarget(method, context);
@@ -149,7 +149,9 @@
 
       case INVOKE_INTERFACE: {
           DexEncodedMethod target =
-              appInfo.resolveMethodOnInterface(getImplReceiverType(), method).getSingleTarget();
+              appInfo
+                  .resolveMethodOnInterfaceLegacy(getImplReceiverType(), method)
+                  .getSingleTarget();
         assert target == null || isInstanceMethod(target);
         return target;
       }
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/constantdynamic/ConstantDynamicClass.java b/src/main/java/com/android/tools/r8/ir/desugar/constantdynamic/ConstantDynamicClass.java
index 8935159..e408232 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/constantdynamic/ConstantDynamicClass.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/constantdynamic/ConstantDynamicClass.java
@@ -120,7 +120,7 @@
     MethodResolutionResult resolution =
         appView
             .appInfoForDesugaring()
-            .resolveMethod(bootstrapMethodReference, bootstrapMethodHandle.isInterface);
+            .resolveMethodLegacy(bootstrapMethodReference, bootstrapMethodHandle.isInterface);
     if (resolution.isSingleResolution()
         && resolution.asSingleResolution().getResolvedMethod().isStatic()) {
       SingleResolutionResult<?> result = resolution.asSingleResolution();
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/apiconversion/DesugaredLibraryAPIConverter.java b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/apiconversion/DesugaredLibraryAPIConverter.java
index f041fe3..55abcef 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/apiconversion/DesugaredLibraryAPIConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/apiconversion/DesugaredLibraryAPIConverter.java
@@ -139,7 +139,7 @@
         ? appView.appInfoForDesugaring().lookupSuperTarget(invokedMethod, context)
         : appView
             .appInfoForDesugaring()
-            .resolveMethod(invokedMethod, invoke.isInterface())
+            .resolveMethodLegacy(invokedMethod, invoke.isInterface())
             .getResolutionPair();
   }
 
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeter.java b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeter.java
index a929fb9..8213473 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeter.java
@@ -175,7 +175,7 @@
     DexMethod invokedMethod = cfInvoke.getMethod();
     AppInfoWithClassHierarchy appInfo = appView.appInfoForDesugaring();
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethod(invokedMethod, cfInvoke.isInterface());
+        appInfo.resolveMethodLegacy(invokedMethod, cfInvoke.isInterface());
     if (!resolutionResult.isSingleResolution()) {
       return NO_REWRITING;
     }
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeterPostProcessor.java b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeterPostProcessor.java
index e1447fb..bfbf6a8 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeterPostProcessor.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/retargeter/DesugaredLibraryRetargeterPostProcessor.java
@@ -153,7 +153,7 @@
     DexMethod forwardMethod = syntheticHelper.forwardingMethod(descriptor);
     assert forwardMethod != null && forwardMethod != target;
     DexEncodedMethod resolvedMethod =
-        appView.appInfoForDesugaring().resolveMethod(target, true).getResolvedMethod();
+        appView.appInfoForDesugaring().resolveMethodLegacy(target, true).getResolvedMethod();
     assert resolvedMethod != null;
     DexEncodedMethod desugaringForwardingMethod =
         DexEncodedMethod.createDesugaringForwardingMethod(
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/icce/AlwaysThrowingInstructionDesugaring.java b/src/main/java/com/android/tools/r8/ir/desugar/icce/AlwaysThrowingInstructionDesugaring.java
index 5c89290..9630887 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/icce/AlwaysThrowingInstructionDesugaring.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/icce/AlwaysThrowingInstructionDesugaring.java
@@ -70,7 +70,7 @@
       CfInvoke invoke = instruction.asInvoke();
       DexMethod invokedMethod = invoke.getMethod();
       MethodResolutionResult resolutionResult =
-          appView.appInfo().resolveMethod(invokedMethod, invoke.isInterface());
+          appView.appInfo().resolveMethodLegacy(invokedMethod, invoke.isInterface());
       if (shouldRewriteInvokeToThrow(invoke, resolutionResult)) {
         return computeInvokeAsThrowRewrite(appView, invoke, resolutionResult);
       }
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/itf/ClassProcessor.java b/src/main/java/com/android/tools/r8/ir/desugar/itf/ClassProcessor.java
index 266b1c5..0806685 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/itf/ClassProcessor.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/itf/ClassProcessor.java
@@ -646,7 +646,7 @@
     AppInfoWithClassHierarchy appInfo = appView.appInfoForDesugaring();
     for (Wrapper<DexMethod> signature : emulatedInterfaceInfo.signatures.signatures) {
       MethodResolutionResult resolutionResult =
-          appInfo.resolveMethodOnClass(clazz, signature.get());
+          appInfo.resolveMethodOnClassLegacy(clazz, signature.get());
       if (resolutionResult.isFailedResolution()) {
         return true;
       }
@@ -685,7 +685,7 @@
   private void resolveForwardForSignature(
       DexClass clazz, DexMethod method, BiConsumer<DexClassAndMethod, DexMethod> addForward) {
     AppInfoWithClassHierarchy appInfo = appView.appInfoForDesugaring();
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOn(clazz, method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnLegacy(clazz, method);
     if (resolutionResult.isFailedResolution()
         || resolutionResult.asSuccessfulMemberResolutionResult().getResolvedMember().isStatic()) {
       // When doing resolution we may find a static or private targets and bubble up the failed
@@ -702,7 +702,7 @@
             resolutionResult.asSuccessfulMemberResolutionResult().getResolvedMember().isStatic());
       }
       if (staticTarget.isAssigned() && staticTarget.isTrue()) {
-        resolutionResult = appInfo.resolveMethodOnInterface(method.holder, method);
+        resolutionResult = appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
       }
       if (resolutionResult.isFailedResolution()) {
         if (resolutionResult.isIncompatibleClassChangeErrorResult()) {
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceDesugaringSyntheticHelper.java b/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceDesugaringSyntheticHelper.java
index 3919202..eda530c 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceDesugaringSyntheticHelper.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceDesugaringSyntheticHelper.java
@@ -263,7 +263,10 @@
     }
     assert verifyKind(method, kinds -> kinds.COMPANION_CLASS);
     DexClassAndMethod resolvedMethod =
-        appView.appInfoForDesugaring().resolveMethod(method.getMethod(), true).getResolutionPair();
+        appView
+            .appInfoForDesugaring()
+            .resolveMethodLegacy(method.getMethod(), true)
+            .getResolutionPair();
     return ensureDefaultAsMethodOfCompanionClassStub(resolvedMethod).getReference();
   }
 
@@ -274,7 +277,7 @@
     DexClassAndMethod method =
         appView
             .appInfoForDesugaring()
-            .resolveMethod(emulatedDispatchMethod.getMethod(), true)
+            .resolveMethodLegacy(emulatedDispatchMethod.getMethod(), true)
             .getResolutionPair();
     assert verifyKind(emulatedDispatchMethod, kinds -> kinds.EMULATED_INTERFACE_CLASS);
     if (method.isProgramMethod()) {
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceMethodRewriter.java b/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceMethodRewriter.java
index 7b3bb07..bc8ebd0 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceMethodRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/itf/InterfaceMethodRewriter.java
@@ -307,7 +307,7 @@
     // would change behavior from throwing ICCE to dispatching to the companion class method.
     AppInfoWithClassHierarchy appInfo = appView.appInfoForDesugaring();
     MethodResolutionResult resolution =
-        appInfo.resolveMethod(invoke.getMethod(), invoke.isInterface());
+        appInfo.resolveMethodLegacy(invoke.getMethod(), invoke.isInterface());
     if (!resolution.isSingleResolution()
         || !resolution.asSingleResolution().getResolvedMethod().isStatic()) {
       return DesugarDescription.nothing();
@@ -408,7 +408,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfoForDesugaring()
-            .resolveMethodOnInterface(holder, invoke.getMethod())
+            .resolveMethodOnInterfaceLegacy(holder, invoke.getMethod())
             .asSingleResolution();
     if (holder.isInterface() && shouldRewriteToInvokeToThrow(resolutionResult, true)) {
       return computeInvokeAsThrowRewrite(invoke, resolutionResult, context);
@@ -437,7 +437,7 @@
     AppInfoWithClassHierarchy appInfoForDesugaring = appView.appInfoForDesugaring();
     SingleResolutionResult<?> resolution =
         appInfoForDesugaring
-            .resolveMethod(invoke.getMethod(), invoke.isInterface())
+            .resolveMethodLegacy(invoke.getMethod(), invoke.isInterface())
             .asSingleResolution();
     if (resolution != null
         && resolution.getResolvedMethod().isPrivate()
@@ -454,7 +454,9 @@
 
   private DesugarDescription computeEmulatedInterfaceVirtualDispatchOrNull(CfInvoke invoke) {
     MethodResolutionResult resolutionResult =
-        appView.appInfoForDesugaring().resolveMethod(invoke.getMethod(), invoke.isInterface());
+        appView
+            .appInfoForDesugaring()
+            .resolveMethodLegacy(invoke.getMethod(), invoke.isInterface());
     DerivedMethod emulatedDispatchMethod =
         helper.computeEmulatedInterfaceDispatchMethod(resolutionResult);
     if (emulatedDispatchMethod == null) {
@@ -492,7 +494,7 @@
     }
 
     MethodResolutionResult resolution =
-        appView.appInfoForDesugaring().resolveMethod(invokedMethod, invoke.isInterface());
+        appView.appInfoForDesugaring().resolveMethodLegacy(invokedMethod, invoke.isInterface());
     if (resolution.isFailedResolution()) {
       return computeInvokeAsThrowRewrite(invoke, null, context);
     }
@@ -638,7 +640,10 @@
     }
 
     SingleResolutionResult<?> resolutionResult =
-        appView.appInfoForDesugaring().resolveMethodOn(clazz, invokedMethod).asSingleResolution();
+        appView
+            .appInfoForDesugaring()
+            .resolveMethodOnLegacy(clazz, invokedMethod)
+            .asSingleResolution();
     if (clazz.isInterface() && shouldRewriteToInvokeToThrow(resolutionResult, false)) {
       return computeInvokeAsThrowRewrite(invoke, resolutionResult, context);
     }
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/AssumeInserter.java b/src/main/java/com/android/tools/r8/ir/optimize/AssumeInserter.java
index 1c49fc9..df9d508 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/AssumeInserter.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/AssumeInserter.java
@@ -230,7 +230,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfo()
-            .unsafeResolveMethodDueToDexFormat(invoke.getInvokedMethod())
+            .unsafeResolveMethodDueToDexFormatLegacy(invoke.getInvokedMethod())
             .asSingleResolution();
     if (resolutionResult == null) {
       return false;
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/Devirtualizer.java b/src/main/java/com/android/tools/r8/ir/optimize/Devirtualizer.java
index 9ba2beb..5930cd3 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/Devirtualizer.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/Devirtualizer.java
@@ -369,7 +369,10 @@
     }
 
     SingleResolutionResult<?> resolutionResult =
-        appView.appInfo().resolveMethodOnClass(target.getHolderType(), target).asSingleResolution();
+        appView
+            .appInfo()
+            .resolveMethodOnClassLegacy(target.getHolderType(), target)
+            .asSingleResolution();
     if (resolutionResult == null
         || resolutionResult
             .isAccessibleForVirtualDispatchFrom(context, appView.appInfo())
@@ -385,7 +388,7 @@
     }
 
     SingleResolutionResult<?> newResolutionResult =
-        appView.appInfo().resolveMethodOnClass(receiverType, target).asSingleResolution();
+        appView.appInfo().resolveMethodOnClassLegacy(receiverType, target).asSingleResolution();
     if (newResolutionResult == null
         || newResolutionResult
             .isAccessibleForVirtualDispatchFrom(context, appView.appInfo())
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/IdempotentFunctionCallCanonicalizer.java b/src/main/java/com/android/tools/r8/ir/optimize/IdempotentFunctionCallCanonicalizer.java
index 265d097..257af5e 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/IdempotentFunctionCallCanonicalizer.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/IdempotentFunctionCallCanonicalizer.java
@@ -139,7 +139,7 @@
 
           SingleResolutionResult<?> resolutionResult =
               appInfoWithLiveness
-                  .resolveMethod(invoke.getInvokedMethod(), invoke.getInterfaceBit())
+                  .resolveMethodLegacy(invoke.getInvokedMethod(), invoke.getInterfaceBit())
                   .asSingleResolution();
           if (resolutionResult == null
               || resolutionResult
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/Inliner.java b/src/main/java/com/android/tools/r8/ir/optimize/Inliner.java
index 4ca07c5..4be71a5 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/Inliner.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/Inliner.java
@@ -963,7 +963,7 @@
           SingleResolutionResult<?> resolutionResult =
               appView
                   .appInfo()
-                  .resolveMethod(invokedMethod, invoke.getInterfaceBit())
+                  .resolveMethodLegacy(invokedMethod, invoke.getInterfaceBit())
                   .asSingleResolution();
           if (resolutionResult == null
               || resolutionResult.isAccessibleFrom(context, appView).isPossiblyFalse()) {
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/InliningConstraints.java b/src/main/java/com/android/tools/r8/ir/optimize/InliningConstraints.java
index 4cf1c8c..59e06c4 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/InliningConstraints.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/InliningConstraints.java
@@ -175,7 +175,7 @@
       return ConstraintWithTarget.ALWAYS;
     }
     MethodResolutionResult resolutionResult =
-        appView.appInfo().unsafeResolveMethodDueToDexFormat(lookup);
+        appView.appInfo().unsafeResolveMethodDueToDexFormatLegacy(lookup);
     DexEncodedMethod target =
         singleTargetWhileVerticalClassMerging(
             resolutionResult, context, MethodResolutionResult::lookupInvokeDirectTarget);
@@ -207,7 +207,7 @@
       return ConstraintWithTarget.ALWAYS;
     }
     MethodResolutionResult resolutionResult =
-        appView.appInfo().unsafeResolveMethodDueToDexFormat(lookup);
+        appView.appInfo().unsafeResolveMethodDueToDexFormatLegacy(lookup);
     DexEncodedMethod target =
         singleTargetWhileVerticalClassMerging(
             resolutionResult, context, MethodResolutionResult::lookupInvokeStaticTarget);
@@ -364,7 +364,8 @@
 
     // Perform resolution and derive inlining constraints based on the accessibility of the
     // resolution result.
-    MethodResolutionResult resolutionResult = appView.appInfo().resolveMethod(method, isInterface);
+    MethodResolutionResult resolutionResult =
+        appView.appInfo().resolveMethodLegacy(method, isInterface);
     if (!resolutionResult.isVirtualTarget()) {
       return ConstraintWithTarget.NEVER;
     }
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java b/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java
index 09b614e..d572d2f 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/MemberValuePropagation.java
@@ -290,7 +290,10 @@
     }
 
     SingleResolutionResult<?> resolutionResult =
-        appView.appInfo().unsafeResolveMethodDueToDexFormat(invokedMethod).asSingleResolution();
+        appView
+            .appInfo()
+            .unsafeResolveMethodDueToDexFormatLegacy(invokedMethod)
+            .asSingleResolution();
     if (resolutionResult == null) {
       return;
     }
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/MultiCallerInliner.java b/src/main/java/com/android/tools/r8/ir/optimize/MultiCallerInliner.java
index 1a35898..e111ec0 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/MultiCallerInliner.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/MultiCallerInliner.java
@@ -91,7 +91,7 @@
       SingleResolutionResult<?> resolutionResult =
           appView
               .appInfo()
-              .resolveMethod(invoke.getInvokedMethod(), invoke.getInterfaceBit())
+              .resolveMethodLegacy(invoke.getInvokedMethod(), invoke.getInterfaceBit())
               .asSingleResolution();
       if (resolutionResult == null
           || resolutionResult.isAccessibleFrom(method, appView).isPossiblyFalse()) {
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/RedundantFieldLoadAndStoreElimination.java b/src/main/java/com/android/tools/r8/ir/optimize/RedundantFieldLoadAndStoreElimination.java
index 5966a8c..a3c270a 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/RedundantFieldLoadAndStoreElimination.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/RedundantFieldLoadAndStoreElimination.java
@@ -512,7 +512,7 @@
           appView
               .appInfo()
               .withClassHierarchy()
-              .unsafeResolveMethodDueToDexFormat(invoke.getInvokedMethod())
+              .unsafeResolveMethodDueToDexFormatLegacy(invoke.getInvokedMethod())
               .getResolvedProgramMethod();
       if (resolvedMethod != null) {
         markClassAsInitialized(resolvedMethod.getHolderType());
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java
index 0b876a7..c2101a1 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java
@@ -294,7 +294,7 @@
           SingleResolutionResult<?> resolutionResult =
               appView
                   .appInfo()
-                  .resolveMethod(invoke.getInvokedMethod(), invoke.getInterfaceBit())
+                  .resolveMethodLegacy(invoke.getInvokedMethod(), invoke.getInterfaceBit())
                   .asSingleResolution();
           if (resolutionResult == null
               || resolutionResult.isAccessibleFrom(method, appView).isPossiblyFalse()) {
@@ -1028,7 +1028,7 @@
     // signature of the invocation resolves to a private or static method.
     // TODO(b/147212189): Why not inline private methods? If access is permitted it is valid.
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnClass(eligibleClass, callee);
+        appView.appInfo().resolveMethodOnClassLegacy(eligibleClass, callee);
     if (resolutionResult.isSingleResolution()
         && !resolutionResult.getSingleTarget().isNonPrivateVirtualMethod()) {
       return false;
@@ -1176,7 +1176,10 @@
       NonEmptyParameterUsage nonEmptyUsage = usage.asNonEmpty();
       for (DexMethod invokedMethod : nonEmptyUsage.getMethodCallsWithParameterAsReceiver()) {
         SingleResolutionResult<?> resolutionResult =
-            appView.appInfo().resolveMethodOn(eligibleClass, invokedMethod).asSingleResolution();
+            appView
+                .appInfo()
+                .resolveMethodOnLegacy(eligibleClass, invokedMethod)
+                .asSingleResolution();
         if (resolutionResult == null || !resolutionResult.getResolvedHolder().isProgramClass()) {
           return false;
         }
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/analysis/TransferFunction.java b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/analysis/TransferFunction.java
index ebad797..e4bbb6c 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/analysis/TransferFunction.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/analysis/TransferFunction.java
@@ -250,7 +250,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfo()
-            .resolveMethodOnClassHolder(invoke.getInvokedMethod())
+            .resolveMethodOnClassHolderLegacy(invoke.getInvokedMethod())
             .asSingleResolution();
     if (resolutionResult == null) {
       return state.abandonClassInliningInCurrentContexts(receiverRoot);
@@ -289,7 +289,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfo()
-            .resolveMethodOnInterfaceHolder(invoke.getInvokedMethod())
+            .resolveMethodOnInterfaceHolderLegacy(invoke.getInvokedMethod())
             .asSingleResolution();
     if (resolutionResult == null) {
       return state.abandonClassInliningInCurrentContexts(receiverRoot);
@@ -305,7 +305,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfo()
-            .unsafeResolveMethodDueToDexFormat(invoke.getInvokedMethod())
+            .unsafeResolveMethodDueToDexFormatLegacy(invoke.getInvokedMethod())
             .asSingleResolution();
     if (resolutionResult != null
         && resolutionResult.getResolvedMethod().getReference()
@@ -331,7 +331,7 @@
     SingleResolutionResult<?> resolutionResult =
         appView
             .appInfo()
-            .resolveMethodOnClassHolder(invoke.getInvokedMethod())
+            .resolveMethodOnClassHolderLegacy(invoke.getInvokedMethod())
             .asSingleResolution();
     if (resolutionResult == null) {
       return state.abandonClassInliningInCurrentContexts(receiverRoot);
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumUnboxingRewriter.java b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumUnboxingRewriter.java
index cfec469..ed028ee 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumUnboxingRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumUnboxingRewriter.java
@@ -461,7 +461,7 @@
       ProgramMethod checkNotZeroMethod =
           appView
               .appInfo()
-              .resolveMethodOnClassHolder(checkNotZeroMethodReference)
+              .resolveMethodOnClassHolderLegacy(checkNotZeroMethodReference)
               .getResolvedProgramMethod();
       if (checkNotZeroMethod != null) {
         EnumUnboxerMethodClassification classification =
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java
index 0d6fa85..f2fbb4c 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java
@@ -160,7 +160,8 @@
         DexEncodedMethod singleTarget =
             appView
                 .appInfo()
-                .resolveMethodOnClass(enumFieldType.getClassType(), factory.objectMembers.toString)
+                .resolveMethodOnClassLegacy(
+                    enumFieldType.getClassType(), factory.objectMembers.toString)
                 .getSingleTarget();
         if (singleTarget != null && singleTarget.getReference() != factory.enumMembers.toString) {
           continue;
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/info/MethodOptimizationInfoCollector.java b/src/main/java/com/android/tools/r8/ir/optimize/info/MethodOptimizationInfoCollector.java
index 8d2e339..c02b953 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/info/MethodOptimizationInfoCollector.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/info/MethodOptimizationInfoCollector.java
@@ -965,7 +965,7 @@
     MethodResolutionResult resolutionResult =
         appView
             .appInfo()
-            .resolveMethodOnClass(clazz, appView.dexItemFactory().objectMembers.finalize);
+            .resolveMethodOnClassLegacy(clazz, appView.dexItemFactory().objectMembers.finalize);
     DexEncodedMethod target = resolutionResult.getSingleTarget();
     return target != null
         && target.getReference() != dexItemFactory.enumMembers.finalize
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/library/sideeffects/JavaLangObjectsSideEffectCollection.java b/src/main/java/com/android/tools/r8/ir/optimize/library/sideeffects/JavaLangObjectsSideEffectCollection.java
index 9d4ae82..bd7edf7 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/library/sideeffects/JavaLangObjectsSideEffectCollection.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/library/sideeffects/JavaLangObjectsSideEffectCollection.java
@@ -49,7 +49,7 @@
       DexClass clazz = appInfo.definitionFor(classType);
       if (clazz != null && clazz.isEffectivelyFinal(appView)) {
         SingleResolutionResult<?> resolutionResult =
-            appInfo.resolveMethodOn(clazz, toStringMethodReference).asSingleResolution();
+            appInfo.resolveMethodOnLegacy(clazz, toStringMethodReference).asSingleResolution();
         if (resolutionResult != null
             && !resolutionResult.getResolvedMethod().getOptimizationInfo().mayHaveSideEffects()) {
           return false;
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/typechecks/CheckCastAndInstanceOfMethodSpecialization.java b/src/main/java/com/android/tools/r8/ir/optimize/typechecks/CheckCastAndInstanceOfMethodSpecialization.java
index ef2f42d..d2ec4d6 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/typechecks/CheckCastAndInstanceOfMethodSpecialization.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/typechecks/CheckCastAndInstanceOfMethodSpecialization.java
@@ -174,7 +174,10 @@
     }
 
     SingleResolutionResult<?> resolutionResult =
-        appView.appInfo().resolveMethodOn(superClass, method.getReference()).asSingleResolution();
+        appView
+            .appInfo()
+            .resolveMethodOnLegacy(superClass, method.getReference())
+            .asSingleResolution();
     if (resolutionResult == null) {
       return null;
     }
diff --git a/src/main/java/com/android/tools/r8/naming/MethodNameMinifier.java b/src/main/java/com/android/tools/r8/naming/MethodNameMinifier.java
index ca7fa4e..242b6e1 100644
--- a/src/main/java/com/android/tools/r8/naming/MethodNameMinifier.java
+++ b/src/main/java/com/android/tools/r8/naming/MethodNameMinifier.java
@@ -382,7 +382,8 @@
       return;
     }
 
-    MethodResolutionResult resolutionResult = appView.appInfo().resolveMethodOn(holder, method);
+    MethodResolutionResult resolutionResult =
+        appView.appInfo().resolveMethodOnLegacy(holder, method);
     if (resolutionResult.isSingleResolution()) {
       DexEncodedMethod resolvedMethod = resolutionResult.getSingleTarget();
       if (resolvedMethod.getReference() == method) {
diff --git a/src/main/java/com/android/tools/r8/naming/MinifiedRenaming.java b/src/main/java/com/android/tools/r8/naming/MinifiedRenaming.java
index bf18111..ddd882c 100644
--- a/src/main/java/com/android/tools/r8/naming/MinifiedRenaming.java
+++ b/src/main/java/com/android/tools/r8/naming/MinifiedRenaming.java
@@ -106,7 +106,8 @@
       return true;
     }
 
-    MethodResolutionResult resolution = appView.appInfo().unsafeResolveMethodDueToDexFormat(method);
+    MethodResolutionResult resolution =
+        appView.appInfo().unsafeResolveMethodDueToDexFormatLegacy(method);
     assert resolution != null;
 
     if (resolution.isSingleResolution()) {
diff --git a/src/main/java/com/android/tools/r8/optimize/MemberRebindingAnalysis.java b/src/main/java/com/android/tools/r8/optimize/MemberRebindingAnalysis.java
index 2e373e0..a03ff91 100644
--- a/src/main/java/com/android/tools/r8/optimize/MemberRebindingAnalysis.java
+++ b/src/main/java/com/android/tools/r8/optimize/MemberRebindingAnalysis.java
@@ -116,7 +116,7 @@
         currentResolutionResult =
             appView
                 .appInfo()
-                .resolveMethodOnClass(currentResolvedHolder.getSuperType(), original)
+                .resolveMethodOnClassLegacy(currentResolvedHolder.getSuperType(), original)
                 .asSingleResolution();
       } else {
         break;
@@ -244,15 +244,15 @@
   }
 
   private MethodResolutionResult resolveMethodOnClass(DexMethod method) {
-    return appView.appInfo().resolveMethodOnClass(method.holder, method);
+    return appView.appInfo().resolveMethodOnClassLegacy(method.holder, method);
   }
 
   private MethodResolutionResult resolveMethodOnInterface(DexMethod method) {
-    return appView.appInfo().resolveMethodOnInterface(method.holder, method);
+    return appView.appInfo().resolveMethodOnInterfaceLegacy(method.holder, method);
   }
 
   private MethodResolutionResult resolveMethod(DexMethod method) {
-    return appView.appInfo().unsafeResolveMethodDueToDexFormat(method);
+    return appView.appInfo().unsafeResolveMethodDueToDexFormatLegacy(method);
   }
 
   private void computeMethodRebinding(MethodAccessInfoCollection methodAccessInfoCollection) {
diff --git a/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLens.java b/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLens.java
index b819518..6782981 100644
--- a/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLens.java
+++ b/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLens.java
@@ -216,7 +216,7 @@
       DexClass holder = appView.contextIndependentDefinitionFor(reference.getHolderType());
       if (holder != null) {
         SingleResolutionResult<?> resolutionResult =
-            appView.appInfo().resolveMethodOn(holder, reference).asSingleResolution();
+            appView.appInfo().resolveMethodOnLegacy(holder, reference).asSingleResolution();
         if (resolutionResult != null && resolutionResult.getResolvedHolder() != holder) {
           recordNonReboundMethodAccess(
               reference, resolutionResult.getResolvedMethod().getReference());
diff --git a/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLensFactory.java b/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLensFactory.java
index 38c08c6..6ae7365 100644
--- a/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLensFactory.java
+++ b/src/main/java/com/android/tools/r8/optimize/MemberRebindingIdentityLensFactory.java
@@ -216,7 +216,7 @@
         return;
       }
       SingleResolutionResult<?> resolutionResult =
-          appInfo.resolveMethodOn(holder, method).asSingleResolution();
+          appInfo.resolveMethodOnLegacy(holder, method).asSingleResolution();
       if (resolutionResult == null) {
         return;
       }
diff --git a/src/main/java/com/android/tools/r8/optimize/MemberRebindingUtils.java b/src/main/java/com/android/tools/r8/optimize/MemberRebindingUtils.java
index cbb7761..1b72c3a 100644
--- a/src/main/java/com/android/tools/r8/optimize/MemberRebindingUtils.java
+++ b/src/main/java/com/android/tools/r8/optimize/MemberRebindingUtils.java
@@ -22,7 +22,7 @@
       return false;
     }
     SingleResolutionResult<?> resolutionResult =
-        appView.appInfo().resolveMethodOn(clazz, method).asSingleResolution();
+        appView.appInfo().resolveMethodOnLegacy(clazz, method).asSingleResolution();
     return resolutionResult != null
         && resolutionResult.getResolvedHolder().getType() != method.getHolderType();
   }
diff --git a/src/main/java/com/android/tools/r8/optimize/VisibilityBridgeRemover.java b/src/main/java/com/android/tools/r8/optimize/VisibilityBridgeRemover.java
index 8055dc4..16e3dfb 100644
--- a/src/main/java/com/android/tools/r8/optimize/VisibilityBridgeRemover.java
+++ b/src/main/java/com/android/tools/r8/optimize/VisibilityBridgeRemover.java
@@ -53,7 +53,10 @@
     }
     // This is a visibility forward, so check for the direct target.
     ProgramMethod targetMethod =
-        appView.appInfo().unsafeResolveMethodDueToDexFormat(target).getResolvedProgramMethod();
+        appView
+            .appInfo()
+            .unsafeResolveMethodDueToDexFormatLegacy(target)
+            .getResolvedProgramMethod();
     if (targetMethod == null || !targetMethod.getAccessFlags().isPublic()) {
       return false;
     }
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorCodeScanner.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorCodeScanner.java
index 150f7ba..d4c83b0 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorCodeScanner.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorCodeScanner.java
@@ -164,7 +164,10 @@
     }
 
     SingleResolutionResult<?> resolutionResult =
-        appView.appInfo().unsafeResolveMethodDueToDexFormat(invokedMethod).asSingleResolution();
+        appView
+            .appInfo()
+            .unsafeResolveMethodDueToDexFormatLegacy(invokedMethod)
+            .asSingleResolution();
     if (resolutionResult == null) {
       // Nothing to propagate; the invoke instruction fails.
       return;
@@ -543,7 +546,7 @@
     SingleResolutionResult<?> resolution =
         appView
             .appInfo()
-            .resolveMethod(bootstrapMethod.asMethod(), bootstrapMethod.isInterface)
+            .resolveMethodLegacy(bootstrapMethod.asMethod(), bootstrapMethod.isInterface)
             .asSingleResolution();
     if (resolution != null && resolution.getResolvedHolder().isProgramClass()) {
       methodStates.set(resolution.getResolvedProgramMethod(), UnknownMethodState.get());
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorMethodReprocessingEnqueuer.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorMethodReprocessingEnqueuer.java
index f7f7d06..cd962c3 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorMethodReprocessingEnqueuer.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/ArgumentPropagatorMethodReprocessingEnqueuer.java
@@ -188,7 +188,7 @@
 
     private void registerInvokeMethod(DexMethod method) {
       SingleResolutionResult<?> resolutionResult =
-          appView.appInfo().unsafeResolveMethodDueToDexFormat(method).asSingleResolution();
+          appView.appInfo().unsafeResolveMethodDueToDexFormatLegacy(method).asSingleResolution();
       if (resolutionResult == null || !resolutionResult.getResolvedHolder().isProgramClass()) {
         return;
       }
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/InterfaceMethodArgumentPropagator.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/InterfaceMethodArgumentPropagator.java
index b41cdda..675bff8 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/InterfaceMethodArgumentPropagator.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/InterfaceMethodArgumentPropagator.java
@@ -131,7 +131,7 @@
             interfaceState.forEach(
                 (interfaceMethod, interfaceMethodState) -> {
                   MethodResolutionResult resolutionResult =
-                      appView.appInfo().resolveMethodOnClass(subclass, interfaceMethod);
+                      appView.appInfo().resolveMethodOnClassLegacy(subclass, interfaceMethod);
                   if (resolutionResult.isFailedResolution()) {
                     // TODO(b/190154391): Do we need to propagate argument information to the first
                     //  virtual method above the inaccessible method in the class hierarchy?
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/VirtualDispatchMethodArgumentPropagator.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/VirtualDispatchMethodArgumentPropagator.java
index 59d8ba7..465a0aa 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/VirtualDispatchMethodArgumentPropagator.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/propagation/VirtualDispatchMethodArgumentPropagator.java
@@ -103,7 +103,10 @@
               inactiveMethodStates.forEach(
                   (signature, methodState) -> {
                     SingleResolutionResult<?> resolutionResult =
-                        appView.appInfo().resolveMethodOn(clazz, signature).asSingleResolution();
+                        appView
+                            .appInfo()
+                            .resolveMethodOnLegacy(clazz, signature)
+                            .asSingleResolution();
 
                     // Find the first virtual method in the super class hierarchy.
                     while (resolutionResult != null
@@ -111,7 +114,7 @@
                       resolutionResult =
                           appView
                               .appInfo()
-                              .resolveMethodOnClass(
+                              .resolveMethodOnClassLegacy(
                                   resolutionResult.getResolvedHolder().getSuperType(), signature)
                               .asSingleResolution();
                     }
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/reprocessingcriteria/ArgumentPropagatorReprocessingCriteriaCollection.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/reprocessingcriteria/ArgumentPropagatorReprocessingCriteriaCollection.java
index 87f26e7..f872fd7 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/reprocessingcriteria/ArgumentPropagatorReprocessingCriteriaCollection.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/reprocessingcriteria/ArgumentPropagatorReprocessingCriteriaCollection.java
@@ -127,7 +127,7 @@
             SingleResolutionResult<?> resolutionResult =
                 appView
                     .appInfo()
-                    .unsafeResolveMethodDueToDexFormat(invoke.getInvokedMethod())
+                    .unsafeResolveMethodDueToDexFormatLegacy(invoke.getInvokedMethod())
                     .asSingleResolution();
             if (resolutionResult == null
                 || !resolutionResult.getResolvedHolder().isProgramClass()) {
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/unusedarguments/EffectivelyUnusedArgumentsAnalysis.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/unusedarguments/EffectivelyUnusedArgumentsAnalysis.java
index b0be28f..2bc10c5 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/unusedarguments/EffectivelyUnusedArgumentsAnalysis.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/unusedarguments/EffectivelyUnusedArgumentsAnalysis.java
@@ -150,7 +150,7 @@
         ProgramMethod resolvedMethod =
             appView
                 .appInfo()
-                .unsafeResolveMethodDueToDexFormat(invoke.getInvokedMethod())
+                .unsafeResolveMethodDueToDexFormatLegacy(invoke.getInvokedMethod())
                 .getResolvedProgramMethod();
         if (resolvedMethod == null || isUnoptimizable(resolvedMethod)) {
           return null;
diff --git a/src/main/java/com/android/tools/r8/optimize/bridgehoisting/BridgeHoisting.java b/src/main/java/com/android/tools/r8/optimize/bridgehoisting/BridgeHoisting.java
index 1bd92a3..f640d08 100644
--- a/src/main/java/com/android/tools/r8/optimize/bridgehoisting/BridgeHoisting.java
+++ b/src/main/java/com/android/tools/r8/optimize/bridgehoisting/BridgeHoisting.java
@@ -166,7 +166,7 @@
       DexEncodedMethod definition = subclass.lookupVirtualMethod(method);
       if (definition == null) {
         DexEncodedMethod resolutionTarget =
-            appView.appInfo().resolveMethodOnClass(subclass, method).getSingleTarget();
+            appView.appInfo().resolveMethodOnClassLegacy(subclass, method).getSingleTarget();
         if (resolutionTarget == null || resolutionTarget.isAbstract()) {
           // The fact that this class does not declare the bridge (or the bridge is abstract) should
           // not prevent us from hoisting the bridge.
@@ -228,7 +228,7 @@
 
     // The targeted method must be present on the new holder class for this to be feasible.
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnClass(clazz, methodToInvoke);
+        appView.appInfo().resolveMethodOnClassLegacy(clazz, methodToInvoke);
     if (!resolutionResult.isSingleResolution()) {
       return;
     }
diff --git a/src/main/java/com/android/tools/r8/repackaging/RepackagingConstraintGraph.java b/src/main/java/com/android/tools/r8/repackaging/RepackagingConstraintGraph.java
index e17be11..63f4483 100644
--- a/src/main/java/com/android/tools/r8/repackaging/RepackagingConstraintGraph.java
+++ b/src/main/java/com/android/tools/r8/repackaging/RepackagingConstraintGraph.java
@@ -160,7 +160,7 @@
         appView.definitionFor(method.getHolder().getSuperType(), method.getHolder());
     if (superClass != null) {
       registry.registerMemberAccess(
-          appView.appInfo().resolveMethodOn(superClass, method.getReference()));
+          appView.appInfo().resolveMethodOnLegacy(superClass, method.getReference()));
     }
 
     // Trace the references in the method and method parameter annotations.
diff --git a/src/main/java/com/android/tools/r8/repackaging/RepackagingUseRegistry.java b/src/main/java/com/android/tools/r8/repackaging/RepackagingUseRegistry.java
index 1339cbf..e5d00a9 100644
--- a/src/main/java/com/android/tools/r8/repackaging/RepackagingUseRegistry.java
+++ b/src/main/java/com/android/tools/r8/repackaging/RepackagingUseRegistry.java
@@ -108,7 +108,8 @@
   }
 
   public ProgramMethod registerMethodReference(DexMethod method) {
-    MethodResolutionResult resolutionResult = appInfo.unsafeResolveMethodDueToDexFormat(method);
+    MethodResolutionResult resolutionResult =
+        appInfo.unsafeResolveMethodDueToDexFormatLegacy(method);
     registerMemberAccess(resolutionResult, false);
     return resolutionResult.isSingleResolution()
         ? resolutionResult.asSingleResolution().getResolvedProgramMethod()
@@ -209,7 +210,7 @@
   @Override
   public void registerInvokeVirtual(DexMethod invokedMethod) {
     registerMemberAccessForInvoke(
-        appInfo.resolveMethod(
+        appInfo.resolveMethodLegacy(
             graphLens.lookupInvokeVirtual(invokedMethod, methodContext, codeLens).getReference(),
             false));
   }
@@ -217,21 +218,21 @@
   @Override
   public void registerInvokeDirect(DexMethod invokedMethod) {
     registerMemberAccessForInvoke(
-        appInfo.unsafeResolveMethodDueToDexFormat(
+        appInfo.unsafeResolveMethodDueToDexFormatLegacy(
             graphLens.lookupInvokeDirect(invokedMethod, methodContext, codeLens).getReference()));
   }
 
   @Override
   public void registerInvokeStatic(DexMethod invokedMethod) {
     registerMemberAccessForInvoke(
-        appInfo.unsafeResolveMethodDueToDexFormat(
+        appInfo.unsafeResolveMethodDueToDexFormatLegacy(
             graphLens.lookupInvokeStatic(invokedMethod, methodContext, codeLens).getReference()));
   }
 
   @Override
   public void registerInvokeInterface(DexMethod invokedMethod) {
     registerMemberAccessForInvoke(
-        appInfo.resolveMethod(
+        appInfo.resolveMethodLegacy(
             graphLens.lookupInvokeInterface(invokedMethod, methodContext, codeLens).getReference(),
             true));
   }
@@ -239,7 +240,7 @@
   @Override
   public void registerInvokeSuper(DexMethod invokedMethod) {
     registerMemberAccessForInvoke(
-        appInfo.unsafeResolveMethodDueToDexFormat(
+        appInfo.unsafeResolveMethodDueToDexFormatLegacy(
             graphLens.lookupInvokeSuper(invokedMethod, methodContext, codeLens).getReference()));
   }
 
diff --git a/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java b/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java
index 34425b3..5a6ef63 100644
--- a/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java
+++ b/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java
@@ -1388,7 +1388,7 @@
       return cachedItem;
     }
     SingleResolutionResult<?> resolution =
-        resolveMethodOn(initialResolutionHolder, method).asSingleResolution();
+        resolveMethodOnLegacy(initialResolutionHolder, method).asSingleResolution();
     if (resolution == null
         || resolution.isAccessibleForVirtualDispatchFrom(context.getHolder(), this).isFalse()) {
       return null;
diff --git a/src/main/java/com/android/tools/r8/shaking/Enqueuer.java b/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
index 6d9a07b..47baa0b 100644
--- a/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
+++ b/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
@@ -2299,7 +2299,8 @@
   private SingleResolutionResult<?> resolveMethod(
       DexMethod method, ProgramDefinition context, KeepReason reason) {
     // Record the references in case they are not program types.
-    MethodResolutionResult resolutionResult = appInfo.unsafeResolveMethodDueToDexFormat(method);
+    MethodResolutionResult resolutionResult =
+        appInfo.unsafeResolveMethodDueToDexFormatLegacy(method);
     if (resolutionResult.isFailedResolution()) {
       markFailedMethodResolutionTargets(
           method, resolutionResult.asFailedResolution(), context, reason);
@@ -2313,7 +2314,7 @@
   private SingleResolutionResult<?> resolveMethod(
       DexMethod method, ProgramDefinition context, KeepReason reason, boolean interfaceInvoke) {
     // Record the references in case they are not program types.
-    MethodResolutionResult resolutionResult = appInfo.resolveMethod(method, interfaceInvoke);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodLegacy(method, interfaceInvoke);
     if (resolutionResult.isSingleResolution()) {
       recordMethodReference(
           method, resolutionResult.getResolutionPair().asProgramDerivedContext(context));
@@ -2794,7 +2795,8 @@
             (resolutionSearchKey, contexts) -> {
               SingleResolutionResult<?> singleResolution =
                   appInfo
-                      .resolveMethod(resolutionSearchKey.method, resolutionSearchKey.isInterface)
+                      .resolveMethodLegacy(
+                          resolutionSearchKey.method, resolutionSearchKey.isInterface)
                       .asSingleResolution();
               if (singleResolution == null) {
                 assert false : "Should not be null";
@@ -2859,7 +2861,7 @@
       markLibraryOrClasspathOverrideLive(
           instantiation,
           libraryClass,
-          appInfo.resolveMethodOn(libraryClass, method.getReference()));
+          appInfo.resolveMethodOnLegacy(libraryClass, method.getReference()));
 
       // Due to API conversion, some overrides can be hidden since they will be rewritten. See
       // class comment of DesugaredLibraryAPIConverter and vivifiedType logic.
@@ -2876,7 +2878,7 @@
         markLibraryOrClasspathOverrideLive(
             instantiation,
             libraryClass,
-            appInfo.resolveMethodOn(instantiation.asClass(), methodToResolve));
+            appInfo.resolveMethodOnLegacy(instantiation.asClass(), methodToResolve));
       }
     }
   }
diff --git a/src/main/java/com/android/tools/r8/shaking/ObjectAllocationInfoCollectionUtils.java b/src/main/java/com/android/tools/r8/shaking/ObjectAllocationInfoCollectionUtils.java
index b7b2513..a578485 100644
--- a/src/main/java/com/android/tools/r8/shaking/ObjectAllocationInfoCollectionUtils.java
+++ b/src/main/java/com/android/tools/r8/shaking/ObjectAllocationInfoCollectionUtils.java
@@ -62,7 +62,8 @@
                 SingleResolutionResult resolution =
                     appView
                         .appInfo()
-                        .resolveMethodOn(clazz, appView.dexItemFactory().objectMembers.finalize)
+                        .resolveMethodOnLegacy(
+                            clazz, appView.dexItemFactory().objectMembers.finalize)
                         .asSingleResolution();
                 if (resolution != null && resolution.getResolvedHolder().isProgramClass()) {
                   return TraversalContinuation.doBreak();
diff --git a/src/main/java/com/android/tools/r8/shaking/RootSetUtils.java b/src/main/java/com/android/tools/r8/shaking/RootSetUtils.java
index 4217e13..471f865 100644
--- a/src/main/java/com/android/tools/r8/shaking/RootSetUtils.java
+++ b/src/main/java/com/android/tools/r8/shaking/RootSetUtils.java
@@ -422,7 +422,7 @@
         DexEncodedMethod target =
             appView
                 .appInfo()
-                .unsafeResolveMethodDueToDexFormat(referenceInSubType)
+                .unsafeResolveMethodDueToDexFormatLegacy(referenceInSubType)
                 .getSingleTarget();
         // But, the resolution should not be landed on the current type we are visiting.
         if (target == null || target.getHolderType() == type) {
@@ -605,7 +605,7 @@
         SingleResolutionResult<?> resolutionResult =
             appView
                 .appInfo()
-                .resolveMethodOn(originalClazz, method.getReference())
+                .resolveMethodOnLegacy(originalClazz, method.getReference())
                 .asSingleResolution();
         if (resolutionResult == null || !resolutionResult.isVirtualTarget()) {
           return;
diff --git a/src/main/java/com/android/tools/r8/shaking/VerticalClassMerger.java b/src/main/java/com/android/tools/r8/shaking/VerticalClassMerger.java
index 9797f72..5aa62c3 100644
--- a/src/main/java/com/android/tools/r8/shaking/VerticalClassMerger.java
+++ b/src/main/java/com/android/tools/r8/shaking/VerticalClassMerger.java
@@ -853,7 +853,7 @@
         // Conservatively find all possible targets for this method.
         LookupResultSuccess lookupResult =
             appInfo
-                .resolveMethodOnInterface(method.getHolderType(), method.getReference())
+                .resolveMethodOnInterfaceLegacy(method.getHolderType(), method.getReference())
                 .lookupVirtualDispatchTargets(target, appInfo)
                 .asLookupResultSuccess();
         assert lookupResult != null;
@@ -1568,7 +1568,7 @@
     // Returns the method that shadows the given method, or null if method is not shadowed.
     private DexEncodedMethod findMethodInTarget(DexEncodedMethod method) {
       MethodResolutionResult resolutionResult =
-          appInfo.resolveMethodOn(target, method.getReference());
+          appInfo.resolveMethodOnLegacy(target, method.getReference());
       if (!resolutionResult.isSingleResolution()) {
         // May happen in case of missing classes, or if multiple implementations were found.
         abortMerge = true;
@@ -2133,8 +2133,8 @@
 
         MethodResolutionResult resolutionResult =
             isInterface.isUnknown()
-                ? appView.appInfo().unsafeResolveMethodDueToDexFormat(method)
-                : appView.appInfo().resolveMethod(method, isInterface.isTrue());
+                ? appView.appInfo().unsafeResolveMethodDueToDexFormatLegacy(method)
+                : appView.appInfo().resolveMethodLegacy(method, isInterface.isTrue());
         if (!resolutionResult.isSingleResolution()
             || !resolutionResult.asSingleResolution().getResolvedMethod().isPublic()) {
           setResult(true);
diff --git a/src/main/java/com/android/tools/r8/tracereferences/Tracer.java b/src/main/java/com/android/tools/r8/tracereferences/Tracer.java
index c5ffc7a..1d74048 100644
--- a/src/main/java/com/android/tools/r8/tracereferences/Tracer.java
+++ b/src/main/java/com/android/tools/r8/tracereferences/Tracer.java
@@ -246,7 +246,7 @@
 
       DexClassAndMethod superTarget =
           appInfo()
-              .resolveMethodOn(method.getHolder(), method.getReference())
+              .resolveMethodOnLegacy(method.getHolder(), method.getReference())
               .lookupInvokeSpecialTarget(method.getHolder(), appInfo());
       if (superTarget != null
           && !superTarget.isProgramMethod()
@@ -267,7 +267,8 @@
           method -> {
             DexClassAndMethod resolvedMethod =
                 appInfo()
-                    .resolveMethodOn(superType, method.getReference(), superType != clazz.superType)
+                    .resolveMethodOnLegacy(
+                        superType, method.getReference(), superType != clazz.superType)
                     .getResolutionPair();
             if (resolvedMethod != null
                 && !resolvedMethod.isProgramMethod()
@@ -311,7 +312,7 @@
         assert lookupResult.getType().isStatic();
         DexMethod rewrittenMethod = lookupResult.getReference();
         handleRewrittenMethodResolution(
-            rewrittenMethod, appInfo().unsafeResolveMethodDueToDexFormat(rewrittenMethod));
+            rewrittenMethod, appInfo().unsafeResolveMethodDueToDexFormatLegacy(rewrittenMethod));
       }
 
       @Override
@@ -320,7 +321,7 @@
         assert lookupResult.getType().isSuper();
         DexMethod rewrittenMethod = lookupResult.getReference();
         MethodResolutionResult resolutionResult =
-            appInfo().unsafeResolveMethodDueToDexFormat(rewrittenMethod);
+            appInfo().unsafeResolveMethodDueToDexFormatLegacy(rewrittenMethod);
         if (resolutionResult.isFailedResolution()
             && resolutionResult.asFailedResolution().hasMethodsCausingError()) {
           handleRewrittenMethodResolution(rewrittenMethod, resolutionResult);
@@ -349,8 +350,8 @@
         handleRewrittenMethodResolution(
             method,
             lookupResult.getType().isInterface()
-                ? appInfo().resolveMethodOnInterfaceHolder(method)
-                : appInfo().resolveMethodOnClassHolder(method));
+                ? appInfo().resolveMethodOnInterfaceHolderLegacy(method)
+                : appInfo().resolveMethodOnClassHolderLegacy(method));
       }
 
       private void handleRewrittenMethodResolution(
diff --git a/src/main/java/com/android/tools/r8/utils/classhierarchy/MethodOverridesCollector.java b/src/main/java/com/android/tools/r8/utils/classhierarchy/MethodOverridesCollector.java
index 7dc7b3e..32ab490 100644
--- a/src/main/java/com/android/tools/r8/utils/classhierarchy/MethodOverridesCollector.java
+++ b/src/main/java/com/android/tools/r8/utils/classhierarchy/MethodOverridesCollector.java
@@ -111,7 +111,7 @@
           SingleResolutionResult<?> resolutionResult =
               appView
                   .appInfo()
-                  .resolveMethodOnClass(implementer, interfaceMethod)
+                  .resolveMethodOnClassLegacy(implementer, interfaceMethod)
                   .asSingleResolution();
           if (resolutionResult == null || !resolutionResult.getResolvedHolder().isProgramClass()) {
             continue;
diff --git a/src/test/java/com/android/tools/r8/classmerging/KeptTargetsIncompleteDiamondTest.java b/src/test/java/com/android/tools/r8/classmerging/KeptTargetsIncompleteDiamondTest.java
index e4a1a1a..57aaddc 100644
--- a/src/test/java/com/android/tools/r8/classmerging/KeptTargetsIncompleteDiamondTest.java
+++ b/src/test/java/com/android/tools/r8/classmerging/KeptTargetsIncompleteDiamondTest.java
@@ -79,7 +79,7 @@
     AppView<AppInfoWithLiveness> appView = computeAppViewWithLiveness(I.class, I.class);
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appView.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnInterfaceHolder(method);
+        appView.appInfo().resolveMethodOnInterfaceHolderLegacy(method);
     DexType typeI = buildType(I.class, appView.dexItemFactory());
     DexType typeL = buildType(L.class, appView.dexItemFactory());
     DexType typeA = buildType(A.class, appView.dexItemFactory());
@@ -121,7 +121,7 @@
     AppView<AppInfoWithLiveness> appView = computeAppViewWithLiveness(I.class, I.class);
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appView.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnInterfaceHolder(method);
+        appView.appInfo().resolveMethodOnInterfaceHolderLegacy(method);
     DexType typeI = buildType(I.class, appView.dexItemFactory());
     DexType typeL = buildType(L.class, appView.dexItemFactory());
     DexType typeA = buildType(A.class, appView.dexItemFactory());
@@ -162,7 +162,7 @@
     AppView<AppInfoWithLiveness> appView = computeAppViewWithLiveness(J.class, J.class);
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appView.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnInterfaceHolder(method);
+        appView.appInfo().resolveMethodOnInterfaceHolderLegacy(method);
     DexType typeI = buildType(I.class, appView.dexItemFactory());
     DexType typeB = buildType(A.class, appView.dexItemFactory());
     DexProgramClass classI = appView.definitionForProgramType(typeI);
@@ -200,7 +200,7 @@
     AppView<AppInfoWithLiveness> appView = computeAppViewWithLiveness(J.class, A.class);
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appView.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnInterfaceHolder(method);
+        appView.appInfo().resolveMethodOnInterfaceHolderLegacy(method);
     DexType typeI = buildType(I.class, appView.dexItemFactory());
     DexType typeB = buildType(A.class, appView.dexItemFactory());
     DexProgramClass classI = appView.definitionForProgramType(typeI);
@@ -240,7 +240,7 @@
     AppView<AppInfoWithLiveness> appView = computeAppViewWithLiveness(I.class, I.class);
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appView.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appView.appInfo().resolveMethodOnInterfaceHolder(method);
+        appView.appInfo().resolveMethodOnInterfaceHolderLegacy(method);
     DexType typeI = buildType(I.class, appView.dexItemFactory());
     DexType typeB = buildType(A.class, appView.dexItemFactory());
     DexProgramClass classI = appView.definitionForProgramType(typeI);
diff --git a/src/test/java/com/android/tools/r8/graph/TargetLookupTest.java b/src/test/java/com/android/tools/r8/graph/TargetLookupTest.java
index d3e91bb..ced7e4f 100644
--- a/src/test/java/com/android/tools/r8/graph/TargetLookupTest.java
+++ b/src/test/java/com/android/tools/r8/graph/TargetLookupTest.java
@@ -97,7 +97,7 @@
     ProgramMethod method = getMethod(inspector, DEFAULT_CLASS_NAME, "int", "x", ImmutableList.of());
     assertFalse(
         appInfo
-            .resolveMethodOnClassHolder(method.getReference())
+            .resolveMethodOnClassHolderLegacy(method.getReference())
             .getSingleTarget()
             .isVirtualMethod());
     assertNull(appInfo.lookupDirectTarget(method.getReference(), method));
@@ -181,14 +181,15 @@
 
     assertFalse(
         appInfo
-            .resolveMethodOnClass(classTestSuper, methodXOnTestSuper.getReference())
+            .resolveMethodOnClassLegacy(classTestSuper, methodXOnTestSuper.getReference())
             .getSingleTarget()
             .isVirtualMethod());
     assertNull(
         appInfo
-            .resolveMethodOnClass(classTest, methodXOnTestSuper.getReference())
+            .resolveMethodOnClassLegacy(classTest, methodXOnTestSuper.getReference())
             .getSingleTarget());
-    assertNull(appInfo.resolveMethodOnClass(classTest, methodXOnTestReference).getSingleTarget());
+    assertNull(
+        appInfo.resolveMethodOnClassLegacy(classTest, methodXOnTestReference).getSingleTarget());
 
     assertNull(appInfo.lookupDirectTarget(methodXOnTestSuper.getReference(), methodXOnTestSuper));
     assertNull(appInfo.lookupDirectTarget(methodXOnTestReference, methodYOnTest));
diff --git a/src/test/java/com/android/tools/r8/internal/R8GMSCoreLookupTest.java b/src/test/java/com/android/tools/r8/internal/R8GMSCoreLookupTest.java
index 956d59e..b8078ae 100644
--- a/src/test/java/com/android/tools/r8/internal/R8GMSCoreLookupTest.java
+++ b/src/test/java/com/android/tools/r8/internal/R8GMSCoreLookupTest.java
@@ -72,11 +72,12 @@
     // Check lookup will produce the same result.
     DexMethod id = method.getReference();
     assertEquals(
-        appInfo().resolveMethodOnClass(id.holder, method.getReference()).getSingleTarget(), method);
+        appInfo().resolveMethodOnClassLegacy(id.holder, method.getReference()).getSingleTarget(),
+        method);
 
     // Check lookup targets with include method.
     MethodResolutionResult resolutionResult =
-        appInfo().resolveMethodOnClass(clazz, method.getReference());
+        appInfo().resolveMethodOnClassLegacy(clazz, method.getReference());
     AppInfoWithLiveness appInfo = null; // TODO(b/154881041): Remove or compute liveness.
     LookupResult lookupResult =
         resolutionResult.lookupVirtualDispatchTargets(
@@ -97,7 +98,7 @@
     AppInfoWithLiveness appInfo = null; // TODO(b/154881041): Remove or compute liveness.
     LookupResultSuccess lookupResult =
         appInfo()
-            .resolveMethodOnInterface(clazz, method.getReference())
+            .resolveMethodOnInterfaceLegacy(clazz, method.getReference())
             .lookupVirtualDispatchTargets(clazz, appInfo(), appInfo, dexReference -> false)
             .asLookupResultSuccess();
     assertNotNull(lookupResult);
diff --git a/src/test/java/com/android/tools/r8/resolution/ArrayTargetLookupTest.java b/src/test/java/com/android/tools/r8/resolution/ArrayTargetLookupTest.java
index 7ea76aa..5b061d7 100644
--- a/src/test/java/com/android/tools/r8/resolution/ArrayTargetLookupTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/ArrayTargetLookupTest.java
@@ -50,18 +50,18 @@
         };
     DexEncodedMethod langObjectNotifyMethod =
         appInfo
-            .resolveMethodOnClassHolder(
+            .resolveMethodOnClassHolderLegacy(
                 factory.createMethod(fooType, factory.createProto(factory.voidType), "notify"))
             .getSingleTarget();
     for (DexType arrType : arrayTypes) {
       assertNull(
           appInfo
-              .resolveMethodOnClassHolder(
+              .resolveMethodOnClassHolderLegacy(
                   factory.createMethod(arrType, factory.createProto(arrType), "clone"))
               .getSingleTarget());
       DexEncodedMethod target =
           appInfo
-              .resolveMethodOnClassHolder(
+              .resolveMethodOnClassHolderLegacy(
                   factory.createMethod(arrType, factory.createProto(factory.voidType), "notify"))
               .getSingleTarget();
       assertEquals(langObjectNotifyMethod, target);
diff --git a/src/test/java/com/android/tools/r8/resolution/InvokePolymorphicResolutionTest.java b/src/test/java/com/android/tools/r8/resolution/InvokePolymorphicResolutionTest.java
index 1b0af62..db280ea 100644
--- a/src/test/java/com/android/tools/r8/resolution/InvokePolymorphicResolutionTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/InvokePolymorphicResolutionTest.java
@@ -48,7 +48,9 @@
     MethodReference invokeExact =
         methodFromMethod(MethodHandle.class.getMethod("invokeExact", Object[].class));
     MethodResolutionResult resolution1 =
-        appView.appInfo().resolveMethod(buildMethod(invokeExact, appView.dexItemFactory()), false);
+        appView
+            .appInfo()
+            .resolveMethodLegacy(buildMethod(invokeExact, appView.dexItemFactory()), false);
     assertFalse(resolution1.isFailedResolution());
 
     // An inexact signature should also find invokeExact.
@@ -61,7 +63,7 @@
     MethodResolutionResult resolution2 =
         appView
             .appInfo()
-            .resolveMethod(buildMethod(inexactInvokeExact, appView.dexItemFactory()), false);
+            .resolveMethodLegacy(buildMethod(inexactInvokeExact, appView.dexItemFactory()), false);
     assertFalse(resolution2.isFailedResolution());
 
     // The should both be the same MethodHandle.invokeExact method.
diff --git a/src/test/java/com/android/tools/r8/resolution/InvokeSuperCallInStaticTest.java b/src/test/java/com/android/tools/r8/resolution/InvokeSuperCallInStaticTest.java
index 67007d2c..ebee166 100644
--- a/src/test/java/com/android/tools/r8/resolution/InvokeSuperCallInStaticTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/InvokeSuperCallInStaticTest.java
@@ -59,7 +59,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(Base.class, "collect", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     assertTrue(resolutionResult.isSingleResolution());
     DexProgramClass context =
         appView.definitionForProgramType(buildType(A.class, appInfo.dexItemFactory()));
diff --git a/src/test/java/com/android/tools/r8/resolution/SingleTargetLookupTest.java b/src/test/java/com/android/tools/r8/resolution/SingleTargetLookupTest.java
index 76cf55a..4c668d0 100644
--- a/src/test/java/com/android/tools/r8/resolution/SingleTargetLookupTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/SingleTargetLookupTest.java
@@ -194,7 +194,7 @@
         buildNullaryVoidMethod(invokeReceiver, methodName, appInfo.dexItemFactory());
     ProgramMethod context =
         appInfo.definitionForProgramType(reference.holder).getProgramDefaultInitializer();
-    Assert.assertNotNull(appInfo.resolveMethodOnClassHolder(reference).getSingleTarget());
+    Assert.assertNotNull(appInfo.resolveMethodOnClassHolderLegacy(reference).getSingleTarget());
     DexEncodedMethod singleVirtualTarget =
         appInfo.lookupSingleVirtualTarget(appView, reference, context, false);
     if (singleTargetHolderOrNull == null) {
@@ -209,8 +209,8 @@
   @Test
   public void lookupVirtualTargets() {
     DexMethod method = buildNullaryVoidMethod(invokeReceiver, methodName, appInfo.dexItemFactory());
-    Assert.assertNotNull(appInfo.resolveMethodOnClassHolder(method).getSingleTarget());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    Assert.assertNotNull(appInfo.resolveMethodOnClassHolderLegacy(method).getSingleTarget());
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     if (resolutionResult.isVirtualTarget()) {
       LookupResult lookupResult =
           resolutionResult.lookupVirtualDispatchTargets(
diff --git a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodTest.java b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodTest.java
index 9de13d2..4fbc7e7 100644
--- a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodTest.java
@@ -91,7 +91,7 @@
   @Test
   public void resolveTarget() {
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnClass(methodOnB.holder, methodOnB);
+        appInfo.resolveMethodOnClassLegacy(methodOnB.holder, methodOnB);
     DexClass context = appInfo.definitionFor(methodOnB.holder);
     assertTrue(resolutionResult.isIllegalAccessErrorResult(context, appInfo));
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodWithVirtualParentTest.java b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodWithVirtualParentTest.java
index d8ad8dd..77f847c 100644
--- a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodWithVirtualParentTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfPrivateStaticMethodWithVirtualParentTest.java
@@ -108,7 +108,7 @@
   @Test
   public void testResolution() {
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnClass(methodOnB.holder, methodOnB);
+        appInfo.resolveMethodOnClassLegacy(methodOnB.holder, methodOnB);
     assertTrue(resolutionResult.isFailedResolution());
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentInterfaceTest.java b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentInterfaceTest.java
index ca541ea..8118ef2 100644
--- a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentInterfaceTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentInterfaceTest.java
@@ -128,7 +128,7 @@
     DexProgramClass bClass = appInfo.definitionForProgramType(methodOnBReference.holder);
     ProgramMethod methodOnB = bClass.lookupProgramMethod(methodOnBReference);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(methodOnBReference.holder, methodOnBReference);
+        appInfo.resolveMethodOnInterfaceLegacy(methodOnBReference.holder, methodOnBReference);
     DexEncodedMethod resolved = resolutionResult.getSingleTarget();
     assertEquals(methodOnBReference, resolved.getReference());
     assertFalse(resolutionResult.isVirtualTarget());
@@ -140,7 +140,7 @@
   @Test
   public void lookupVirtualTargets() {
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(methodOnBReference.holder, methodOnBReference);
+        appInfo.resolveMethodOnInterfaceLegacy(methodOnBReference.holder, methodOnBReference);
     DexEncodedMethod resolved = resolutionResult.getSingleTarget();
     assertEquals(methodOnBReference, resolved.getReference());
     assertFalse(resolutionResult.isVirtualTarget());
diff --git a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentTest.java b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentTest.java
index c40f080..47c0857 100644
--- a/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/VirtualOverrideOfStaticMethodWithVirtualParentTest.java
@@ -175,7 +175,7 @@
   public void lookupSingleTarget() {
     DexProgramClass bClass = appView.definitionForProgramType(methodOnB.holder);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnClass(methodOnB.holder, methodOnB);
+        appInfo.resolveMethodOnClassLegacy(methodOnB.holder, methodOnB);
     DexEncodedMethod resolved = resolutionResult.getSingleTarget();
     assertEquals(methodOnA, resolved.getReference());
     assertFalse(resolutionResult.isVirtualTarget());
@@ -188,7 +188,7 @@
   @Test
   public void lookupVirtualTargets() {
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnClass(methodOnB.holder, methodOnB);
+        appInfo.resolveMethodOnClassLegacy(methodOnB.holder, methodOnB);
     DexEncodedMethod resolved = resolutionResult.getSingleTarget();
     assertEquals(methodOnA, resolved.getReference());
     assertFalse(resolutionResult.isVirtualTarget());
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessTest.java
index 898cfae..aa827c8 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessTest.java
@@ -122,7 +122,7 @@
     // Resolve the method from the point of the declared holder.
     assertEquals(method.holder, declaredClassDefinition.type);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOn(declaredClassDefinition, method);
+        appInfo.resolveMethodOnLegacy(declaredClassDefinition, method);
 
     if (!symbolicReferenceIsDefiningType) {
       // The targeted method is a private interface method and thus not a maximally specific method.
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessWithIntermediateTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessWithIntermediateTest.java
index 82c6b63..50f4428 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessWithIntermediateTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialInterfaceMethodAccessWithIntermediateTest.java
@@ -123,7 +123,7 @@
     // Resolve the method from the point of the declared holder.
     assertEquals(method.holder, declaredClassDefinition.type);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOn(declaredClassDefinition, method);
+        appInfo.resolveMethodOnLegacy(declaredClassDefinition, method);
 
     // The targeted method is a private interface method and thus not a maximally specific method.
     assertTrue(resolutionResult instanceof NoSuchMethodResult);
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessTest.java
index b14ab55..1a6485c 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessTest.java
@@ -96,7 +96,7 @@
     // Resolve the method from the point of the declared holder.
     assertEquals(method.holder, declaredClassDefinition.type);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOn(declaredClassDefinition, method);
+        appInfo.resolveMethodOnLegacy(declaredClassDefinition, method);
 
     // Verify that the resolved method is on the defining class.
     assertEquals(
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessWithIntermediateTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessWithIntermediateTest.java
index 5638929..5fddce3 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessWithIntermediateTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodAccessWithIntermediateTest.java
@@ -121,7 +121,7 @@
     // Resolve the method from the point of the declared holder.
     assertEquals(method.holder, declaredClassDefinition.type);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOn(declaredClassDefinition, method);
+        appInfo.resolveMethodOnLegacy(declaredClassDefinition, method);
 
     // Resolution fails when there is a mismatch between the symbolic reference and the definition.
     if (!symbolicReferenceIsDefiningType) {
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodPublicAccessWithIntermediateTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodPublicAccessWithIntermediateTest.java
index d65dabf..31a8904 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodPublicAccessWithIntermediateTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestInvokeSpecialMethodPublicAccessWithIntermediateTest.java
@@ -98,7 +98,7 @@
     // Resolve the method from the point of the declared holder.
     assertEquals(method.holder, declaredClassDefinition.type);
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOn(declaredClassDefinition, method);
+        appInfo.resolveMethodOnLegacy(declaredClassDefinition, method);
 
     // Verify that the resolved method is on the defining class.
     assertEquals(
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessTest.java
index f1a35bb..63cd43e 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessTest.java
@@ -74,7 +74,7 @@
     DexProgramClass bClass =
         appInfo.definitionFor(buildType(B.class, appInfo.dexItemFactory())).asProgramClass();
     DexMethod bar = buildMethod(A.class.getDeclaredMethod("bar"), appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(bar);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(bar);
     assertEquals(OptionalBool.of(inSameNest), resolutionResult.isAccessibleFrom(bClass, appInfo));
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessWithIntermediateClassTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessWithIntermediateClassTest.java
index d68610e..f7bfe55 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessWithIntermediateClassTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestStaticMethodAccessWithIntermediateClassTest.java
@@ -73,7 +73,7 @@
     DexProgramClass bClass =
         appInfo.definitionFor(buildType(B.class, appInfo.dexItemFactory())).asProgramClass();
     DexMethod bar = buildMethod(A.class.getDeclaredMethod("bar"), appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(bar);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(bar);
     assertEquals(OptionalBool.of(inSameNest), resolutionResult.isAccessibleFrom(bClass, appInfo));
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessTest.java
index ccc0430..7d9eb16 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessTest.java
@@ -76,7 +76,7 @@
     DexProgramClass bClass =
         appInfo.definitionFor(buildType(B.class, appInfo.dexItemFactory())).asProgramClass();
     DexMethod bar = buildMethod(A.class.getDeclaredMethod("bar"), appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(bar);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(bar);
     assertEquals(OptionalBool.of(inSameNest), resolutionResult.isAccessibleFrom(bClass, appInfo));
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessWithIntermediateClassTest.java b/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessWithIntermediateClassTest.java
index f2f7dd9..4a9c475 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessWithIntermediateClassTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/NestVirtualMethodAccessWithIntermediateClassTest.java
@@ -72,7 +72,7 @@
     DexProgramClass bClass =
         appInfo.definitionFor(buildType(B.class, appInfo.dexItemFactory())).asProgramClass();
     DexMethod bar = buildMethod(A.class.getDeclaredMethod("bar"), appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(bar);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(bar);
     assertEquals(OptionalBool.of(inSameNest), resolutionResult.isAccessibleFrom(bClass, appInfo));
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/access/SelfVirtualMethodAccessTest.java b/src/test/java/com/android/tools/r8/resolution/access/SelfVirtualMethodAccessTest.java
index a91d3ed..754b19d 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/SelfVirtualMethodAccessTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/SelfVirtualMethodAccessTest.java
@@ -59,7 +59,7 @@
     DexProgramClass aClass =
         appInfo.definitionFor(buildType(A.class, appInfo.dexItemFactory())).asProgramClass();
     DexMethod bar = buildMethod(A.class.getDeclaredMethod("bar"), appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(bar);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(bar);
     assertEquals(OptionalBool.TRUE, resolutionResult.isAccessibleFrom(aClass, appInfo));
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/access/indirectmethod/IndirectMethodAccessTest.java b/src/test/java/com/android/tools/r8/resolution/access/indirectmethod/IndirectMethodAccessTest.java
index 9ae877d..c5363de 100644
--- a/src/test/java/com/android/tools/r8/resolution/access/indirectmethod/IndirectMethodAccessTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/access/indirectmethod/IndirectMethodAccessTest.java
@@ -65,7 +65,7 @@
     DexProgramClass cClass =
         appInfo.definitionFor(buildType(C.class, appInfo.dexItemFactory())).asProgramClass();
     DexMethod bar = buildMethod(B.class.getMethod("foo"), appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(bar);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(bar);
     assertEquals(
         OptionalBool.TRUE, resolutionResult.isAccessibleForVirtualDispatchFrom(cClass, appInfo));
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/AbstractAllTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/AbstractAllTest.java
index 81a0f45..51f29aa 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/AbstractAllTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/AbstractAllTest.java
@@ -45,7 +45,7 @@
         buildClasses(CLASSES).addLibraryFile(parameters.getDefaultRuntimeLibrary()).build();
     AppInfoWithLiveness appInfo = computeAppViewWithLiveness(app, Main.class).appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     // Currently R8 will resolve to L::f as that is the first in the topological search.
     // Resolution may return any of the matches, so it is valid if this expectation changes.
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultLeftAbstractRightTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultLeftAbstractRightTest.java
index d708d1e..05bb852 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultLeftAbstractRightTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultLeftAbstractRightTest.java
@@ -51,7 +51,7 @@
             .buildWithLiveness()
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     assertEquals(L.class.getTypeName(), resolutionTarget.getHolderType().toSourceString());
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultRightAbstractLeftTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultRightAbstractLeftTest.java
index 8f94ef3..7314ee5 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultRightAbstractLeftTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultRightAbstractLeftTest.java
@@ -51,7 +51,7 @@
             .buildWithLiveness()
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     assertEquals(R.class.getTypeName(), resolutionTarget.getHolderType().toSourceString());
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractLeftTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractLeftTest.java
index 6b31505..9f1df3e 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractLeftTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractLeftTest.java
@@ -53,7 +53,7 @@
                 Main.class)
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     assertEquals(L.class.getTypeName(), resolutionTarget.getHolderType().toSourceString());
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractRightTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractRightTest.java
index 0b78a07..b5cac2e 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractRightTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAbstractRightTest.java
@@ -53,7 +53,7 @@
                 Main.class)
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     assertEquals(R.class.getTypeName(), resolutionTarget.getHolderType().toSourceString());
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndBothTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndBothTest.java
index 7f09e71..31e9e9e 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndBothTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndBothTest.java
@@ -53,7 +53,7 @@
             .buildWithLiveness()
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     Set<String> holders = new HashSet<>();
     resolutionResult
         .asFailedResolution()
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndLeftTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndLeftTest.java
index 0f37198..53a17c4 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndLeftTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndLeftTest.java
@@ -50,7 +50,7 @@
             .buildWithLiveness()
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     assertEquals(L.class.getTypeName(), resolutionTarget.getHolderType().toSourceString());
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndRightTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndRightTest.java
index 8d35771..018cddb 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndRightTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/DefaultTopAndRightTest.java
@@ -50,7 +50,7 @@
             .buildWithLiveness()
             .appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexEncodedMethod resolutionTarget = resolutionResult.getSingleTarget();
     assertEquals(R.class.getTypeName(), resolutionTarget.getHolderType().toSourceString());
   }
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/TwoDefaultMethodsWithoutTopTest.java b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/TwoDefaultMethodsWithoutTopTest.java
index 290dbec..d5aefd7 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacediamonds/TwoDefaultMethodsWithoutTopTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacediamonds/TwoDefaultMethodsWithoutTopTest.java
@@ -58,7 +58,7 @@
               .buildWithLiveness()
               .appInfo();
       DexMethod method = buildNullaryVoidMethod(B.class, "f", appInfo.dexItemFactory());
-      MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+      MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
       if (minApi.isLessThan(apiLevelWithDefaultInterfaceMethodsSupport())) {
         // When desugaring a forwarding method throwing ICCE is inserted.
         // Check that the resolved method throws such an exception.
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodAsOverrideWithLambdaTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodAsOverrideWithLambdaTest.java
index b3c88c7..e838d5d 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodAsOverrideWithLambdaTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodAsOverrideWithLambdaTest.java
@@ -64,7 +64,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "bar", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodLambdaTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodLambdaTest.java
index 1b3d3d9..dfa7451 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodLambdaTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultMethodLambdaTest.java
@@ -63,7 +63,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "bar", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultWithoutTopTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultWithoutTopTest.java
index 8908dce..ed99f3e 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultWithoutTopTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DefaultWithoutTopTest.java
@@ -63,7 +63,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
@@ -112,7 +112,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DuplicateImportsTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DuplicateImportsTest.java
index 8122941..9002d8d 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/DuplicateImportsTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/DuplicateImportsTest.java
@@ -63,7 +63,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/InvokeInterfaceWithStaticTargetTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/InvokeInterfaceWithStaticTargetTest.java
index ca5e24e..29ae548 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/InvokeInterfaceWithStaticTargetTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/InvokeInterfaceWithStaticTargetTest.java
@@ -56,7 +56,7 @@
         AssertionError.class,
         () ->
             appInfo
-                .resolveMethodOnInterfaceHolder(method)
+                .resolveMethodOnInterfaceHolderLegacy(method)
                 .lookupVirtualDispatchTargets(context, appInfo));
   }
 
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/LambdaMultipleInterfacesTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/LambdaMultipleInterfacesTest.java
index 0819b97..6d93202 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/LambdaMultipleInterfacesTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/LambdaMultipleInterfacesTest.java
@@ -63,7 +63,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(J.class, "bar", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/MultipleImplementsTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/MultipleImplementsTest.java
index 5912e69..8b1b588 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/MultipleImplementsTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/MultipleImplementsTest.java
@@ -61,7 +61,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SimpleInterfaceInvokeTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SimpleInterfaceInvokeTest.java
index 3503bdf..c48764d 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SimpleInterfaceInvokeTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SimpleInterfaceInvokeTest.java
@@ -61,7 +61,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubInterfaceOverridesTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubInterfaceOverridesTest.java
index 4d85bfb..50e000b 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubInterfaceOverridesTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubInterfaceOverridesTest.java
@@ -63,7 +63,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeMissingOverridesTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeMissingOverridesTest.java
index 682d447..a3b1d8f 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeMissingOverridesTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeMissingOverridesTest.java
@@ -60,7 +60,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeOverridesTest.java b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeOverridesTest.java
index bbf73d7..1d8a03a 100644
--- a/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeOverridesTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/interfacetargets/SubTypeOverridesTest.java
@@ -60,7 +60,7 @@
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
     MethodResolutionResult resolutionResult =
-        appInfo.resolveMethodOnInterface(method.holder, method);
+        appInfo.resolveMethodOnInterfaceLegacy(method.holder, method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateClasspathWidenTest.java b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateClasspathWidenTest.java
index bff70ca..13a108d 100644
--- a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateClasspathWidenTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateClasspathWidenTest.java
@@ -74,7 +74,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(Abstract.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Abstract.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryTest.java b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryTest.java
index 255fbed..45eab24 100644
--- a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryTest.java
@@ -59,7 +59,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "bar", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(A.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryWithNarrowingTest.java b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryWithNarrowingTest.java
index ab211fe..a875b43 100644
--- a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryWithNarrowingTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateReentryWithNarrowingTest.java
@@ -63,7 +63,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "bar", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(A.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethod2Test.java b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethod2Test.java
index be8acd3..3eb13d5 100644
--- a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethod2Test.java
+++ b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethod2Test.java
@@ -73,7 +73,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(A.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethodTest.java b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethodTest.java
index 8846bf2..6ccf173 100644
--- a/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethodTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/packageprivate/PackagePrivateWithDefaultMethodTest.java
@@ -67,7 +67,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(A.class, appInfo.dexItemFactory()));
     assertTrue(resolutionResult.isAccessibleFrom(context, appView).isFalse());
diff --git a/src/test/java/com/android/tools/r8/resolution/packageprivate/WidenAccessOutsidePackageTest.java b/src/test/java/com/android/tools/r8/resolution/packageprivate/WidenAccessOutsidePackageTest.java
index da660f2..7a588f3 100644
--- a/src/test/java/com/android/tools/r8/resolution/packageprivate/WidenAccessOutsidePackageTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/packageprivate/WidenAccessOutsidePackageTest.java
@@ -60,7 +60,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "bar", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(A.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/singletarget/InstantiatedLowerBoundTest.java b/src/test/java/com/android/tools/r8/resolution/singletarget/InstantiatedLowerBoundTest.java
index 58c64b1..42733a1 100644
--- a/src/test/java/com/android/tools/r8/resolution/singletarget/InstantiatedLowerBoundTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/singletarget/InstantiatedLowerBoundTest.java
@@ -131,7 +131,7 @@
     DexMethod fooA = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
     DexMethod fooB = buildNullaryVoidMethod(B.class, "foo", appInfo.dexItemFactory());
     DexMethod fooC = buildNullaryVoidMethod(C.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolution = appInfo.resolveMethodOnClassHolder(fooA);
+    MethodResolutionResult resolution = appInfo.resolveMethodOnClassHolderLegacy(fooA);
     DexProgramClass context = appView.definitionForProgramType(typeMain);
     DexProgramClass upperBound = appView.definitionForProgramType(typeA);
     DexProgramClass lowerBound = appView.definitionForProgramType(typeC);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/AbstractInMiddleTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/AbstractInMiddleTest.java
index e856ed2..2906ddd 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/AbstractInMiddleTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/AbstractInMiddleTest.java
@@ -59,7 +59,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceSubTypeTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceSubTypeTest.java
index 665ef74..42c441b 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceSubTypeTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceSubTypeTest.java
@@ -62,7 +62,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceTest.java
index df0722f..67afdad 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultInterfaceMethodInSubInterfaceTest.java
@@ -62,7 +62,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultWithoutTopTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultWithoutTopTest.java
index d4541ac..c6c6aac 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultWithoutTopTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/DefaultWithoutTopTest.java
@@ -63,7 +63,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvalidResolutionToThisTarget.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvalidResolutionToThisTarget.java
index 6aac0fb..ada09f0 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvalidResolutionToThisTarget.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvalidResolutionToThisTarget.java
@@ -59,7 +59,8 @@
                       Main.class);
               AppInfoWithLiveness appInfo = appView.appInfo();
               DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-              MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+              MethodResolutionResult resolutionResult =
+                  appInfo.resolveMethodOnClassHolderLegacy(method);
               assertTrue(resolutionResult.isSingleResolution());
               DexType mainType = buildType(Main.class, appInfo.dexItemFactory());
               DexProgramClass main = appView.definitionForProgramType(mainType);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvokeVirtualToInterfaceDefinitionTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvokeVirtualToInterfaceDefinitionTest.java
index a1f6b17..184b03f 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvokeVirtualToInterfaceDefinitionTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/InvokeVirtualToInterfaceDefinitionTest.java
@@ -62,7 +62,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/KeptTargetsIncompleteLookupTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/KeptTargetsIncompleteLookupTest.java
index 19f951a..a96b487 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/KeptTargetsIncompleteLookupTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/KeptTargetsIncompleteLookupTest.java
@@ -87,7 +87,7 @@
             });
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(initial, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         DexProgramClass.asProgramClassOrNull(
             appView
@@ -238,7 +238,7 @@
                 .build());
     AppInfoWithClassHierarchy appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(B.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexType typeA = buildType(A.class, appInfo.dexItemFactory());
     DexType typeB = buildType(B.class, appInfo.dexItemFactory());
     DexProgramClass classB = appInfo.definitionForProgramType(typeB);
@@ -273,7 +273,7 @@
             Unrelated.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(Unrelated.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Unrelated.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateChainTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateChainTest.java
index 33bfc01..69ef032 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateChainTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateChainTest.java
@@ -62,7 +62,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(Top.class, "clear", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(TopRunner.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateFinalOverrideTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateFinalOverrideTest.java
index 28d1cc2..b72f8b6 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateFinalOverrideTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/PackagePrivateFinalOverrideTest.java
@@ -68,7 +68,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(ViewModel.class, "clear", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(
             buildType(ViewModelRunner.class, appInfo.dexItemFactory()));
@@ -119,7 +119,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(ViewModel.class, "clear", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
@@ -171,7 +171,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(ViewModel.class, "clear", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(
             buildType(ViewModelRunnerWithCast.class, appInfo.dexItemFactory()));
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/PrivateOverrideOfVirtualTargetTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/PrivateOverrideOfVirtualTargetTest.java
index 24aa358..2d10b18 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/PrivateOverrideOfVirtualTargetTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/PrivateOverrideOfVirtualTargetTest.java
@@ -61,7 +61,7 @@
             Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "bar", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(B.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedDifferentPackageLookupTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedDifferentPackageLookupTest.java
index 3ffdf09..87d27ee 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedDifferentPackageLookupTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedDifferentPackageLookupTest.java
@@ -54,7 +54,7 @@
     AppView<AppInfoWithLiveness> appView = computeAppViewWithLiveness(builder.build(), Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedSamePackageLookupTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedSamePackageLookupTest.java
index 337ba95..0a3d14a 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedSamePackageLookupTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/ProtectedSamePackageLookupTest.java
@@ -50,7 +50,7 @@
             PackagePrivateChainTest.Main.class);
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(A.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnClassHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/resolution/virtualtargets/TargetInDefaultMethodTest.java b/src/test/java/com/android/tools/r8/resolution/virtualtargets/TargetInDefaultMethodTest.java
index 8769eca..d1eb536 100644
--- a/src/test/java/com/android/tools/r8/resolution/virtualtargets/TargetInDefaultMethodTest.java
+++ b/src/test/java/com/android/tools/r8/resolution/virtualtargets/TargetInDefaultMethodTest.java
@@ -63,7 +63,7 @@
             .buildWithLiveness();
     AppInfoWithLiveness appInfo = appView.appInfo();
     DexMethod method = buildNullaryVoidMethod(I.class, "foo", appInfo.dexItemFactory());
-    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolder(method);
+    MethodResolutionResult resolutionResult = appInfo.resolveMethodOnInterfaceHolderLegacy(method);
     DexProgramClass context =
         appView.definitionForProgramType(buildType(Main.class, appInfo.dexItemFactory()));
     LookupResult lookupResult = resolutionResult.lookupVirtualDispatchTargets(context, appInfo);
diff --git a/src/test/java/com/android/tools/r8/shaking/b169045091/B169045091.java b/src/test/java/com/android/tools/r8/shaking/b169045091/B169045091.java
index 3a32244..d3b8c48 100644
--- a/src/test/java/com/android/tools/r8/shaking/b169045091/B169045091.java
+++ b/src/test/java/com/android/tools/r8/shaking/b169045091/B169045091.java
@@ -100,7 +100,7 @@
     DexMethod helloReference = buildNullaryVoidMethod(HelloGreeter.class, "hello", dexItemFactory);
     assertTrue(
         appInfo
-            .resolveMethodOnClassHolder(helloReference)
+            .resolveMethodOnClassHolderLegacy(helloReference)
             .isAccessibleFrom(context, appView)
             .isTrue());
 
@@ -108,7 +108,7 @@
     DexMethod worldReference = buildNullaryVoidMethod(WorldGreeter.class, "world", dexItemFactory);
     assertTrue(
         appInfo
-            .resolveMethodOnClassHolder(worldReference)
+            .resolveMethodOnClassHolderLegacy(worldReference)
             .isAccessibleFrom(context, appView)
             .isFalse());
   }