Revert "Use new method lookup in trace references"

This reverts commit 25bc16a93daeae952f852a03cf9121d01a3f1e72.

Reason for revert: Does not work with trace references.

Change-Id: Id56405b2ddb6532b2021579779b31032fb28b5f0
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 0468162..a17a299 100644
--- a/src/main/java/com/android/tools/r8/tracereferences/Tracer.java
+++ b/src/main/java/com/android/tools/r8/tracereferences/Tracer.java
@@ -314,7 +314,7 @@
         assert lookupResult.getType().isStatic();
         DexMethod rewrittenMethod = lookupResult.getReference();
         handleRewrittenMethodResolution(
-            rewrittenMethod, appInfo().unsafeResolveMethodDueToDexFormat(rewrittenMethod));
+            rewrittenMethod, appInfo().unsafeResolveMethodDueToDexFormatLegacy(rewrittenMethod));
       }
 
       @Override
@@ -352,25 +352,23 @@
         handleRewrittenMethodResolution(
             method,
             lookupResult.getType().isInterface()
-                ? appInfo().resolveMethodOnInterfaceHolder(method)
-                : appInfo().resolveMethodOnClassHolder(method));
+                ? appInfo().resolveMethodOnInterfaceHolderLegacy(method)
+                : appInfo().resolveMethodOnClassHolderLegacy(method));
       }
 
       private void handleRewrittenMethodResolution(
           DexMethod method, MethodResolutionResult resolutionResult) {
-        resolutionResult.forEachMethodResolutionResult(
-            result -> {
-              if (result.isSingleResolution()) {
-                handleRewrittenMethodReference(method, result.getResolutionPair());
-              } else {
-                result
-                    .asFailedResolution()
-                    .forEachFailureDependency(
-                        type -> addType(type, referencedFrom),
-                        methodCausingFailure ->
-                            handleRewrittenMethodReference(method, methodCausingFailure));
-              }
-            });
+        if (resolutionResult.isFailedResolution()
+            && resolutionResult.asFailedResolution().hasMethodsCausingError()) {
+          resolutionResult
+              .asFailedResolution()
+              .forEachFailureDependency(
+                  type -> addType(type, referencedFrom),
+                  methodCausingFailure ->
+                      handleRewrittenMethodReference(method, methodCausingFailure));
+          return;
+        }
+        handleRewrittenMethodReference(method, resolutionResult.getResolutionPair());
       }
 
       private void handleRewrittenMethodReference(
diff --git a/src/test/java/com/android/tools/r8/tracereferences/TraceMethodResolutionWithLibraryAndProgramClassTest.java b/src/test/java/com/android/tools/r8/tracereferences/TraceMethodResolutionWithLibraryAndProgramClassTest.java
index 82661ee..4dcf1cd 100644
--- a/src/test/java/com/android/tools/r8/tracereferences/TraceMethodResolutionWithLibraryAndProgramClassTest.java
+++ b/src/test/java/com/android/tools/r8/tracereferences/TraceMethodResolutionWithLibraryAndProgramClassTest.java
@@ -18,7 +18,6 @@
 import com.android.tools.r8.utils.ZipUtils.ZipBuilder;
 import com.google.common.collect.ImmutableSet;
 import java.nio.file.Path;
-import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
 import org.junit.Test;
@@ -95,11 +94,14 @@
     ImmutableSet<MethodReference> foundSet =
         ImmutableSet.of(
             Reference.methodFromMethod(A.class.getMethod("foo")),
-            Reference.methodFromMethod(A.class.getMethod("bar")),
+            Reference.methodFromMethod(A.class.getMethod("bar")));
+    ImmutableSet<MethodReference> missingSet =
+        ImmutableSet.of(
             Reference.methodFromMethod(B.class.getMethod("baz")),
             Reference.methodFromMethod(B.class.getMethod("qux")));
     assertEquals(foundSet, consumer.seenMethods);
-    assertEquals(Collections.emptySet(), consumer.seenMissingMethods);
+    // TODO(b/226170842): Methods should not be missing.
+    assertEquals(missingSet, consumer.seenMissingMethods);
   }
 
   // A is added to both library and program, but the program one is missing the methods {foo,bar}