Use index rather than contains() for catchHandlers in a couple spots

No behavior change.

Bug: None
Change-Id: Ib89a8de459c8bd06451ffde066b17ea91169ef62
diff --git a/src/main/java/com/android/tools/r8/ir/code/BasicBlock.java b/src/main/java/com/android/tools/r8/ir/code/BasicBlock.java
index d784fa3..4f6ab95 100644
--- a/src/main/java/com/android/tools/r8/ir/code/BasicBlock.java
+++ b/src/main/java/com/android/tools/r8/ir/code/BasicBlock.java
@@ -426,11 +426,9 @@
   public void removeAllNormalSuccessors() {
     if (hasCatchHandlers()) {
       IntList successorsToRemove = new IntArrayList();
-      Set<Integer> handlers = catchHandlers.getUniqueTargets();
-      for (int i = 0; i < successors.size(); i++) {
-        if (!handlers.contains(i)) {
-          successorsToRemove.add(i);
-        }
+
+      for (int i = numberOfExceptionalSuccessors(), l = successors.size(); i < l; i++) {
+        successorsToRemove.add(i);
       }
       removeSuccessorsByIndex(successorsToRemove);
     } else {
@@ -1303,10 +1301,12 @@
   }
 
   public boolean hasCatchSuccessor(BasicBlock block) {
-    if (!hasCatchHandlers()) {
+    int numberOfExceptionalSuccessors = numberOfExceptionalSuccessors();
+    if (numberOfExceptionalSuccessors == 0) {
       return false;
     }
-    return catchHandlers.getUniqueTargets().contains(successors.indexOf(block));
+    int blockIndex = successors.indexOf(block);
+    return blockIndex >= 0 && blockIndex < numberOfExceptionalSuccessors;
   }
 
   public int guardsForCatchSuccessor(BasicBlock block) {