Revert "Revert incorrect refactor."

This reverts commit 3b6af16133dc3544069fbfbc6c30ec3bd601dcfe.

Reason for revert: test failures

Change-Id: Ibfc074ad3172751723e84f1f572ce60f4a5cbdf9
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 b6236d8..7c07af0 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
@@ -154,7 +154,8 @@
     // If the method is defined on the parent class, we cannot hoist the bridge.
     // TODO(b/153147967): If the declared method is abstract, we could replace it by the bridge.
     //  Add a test.
-    if (clazz.lookupProgramMethod(method) != null) {
+    ProgramMethod programMethod = clazz.lookupProgramMethod(method);
+    if (programMethod != null) {
       return;
     }
 
@@ -278,8 +279,8 @@
         representative.getReference());
 
     // Remove all of the bridges in the eligible subclasses.
-    assert !appView.appInfo().isPinnedWithDefinitionLookup(method);
     for (DexProgramClass subclass : eligibleSubclasses) {
+      assert !appView.appInfo().isPinned(programMethod);
       DexEncodedMethod removed = subclass.removeMethod(method);
       assert removed != null;
     }