Account for missing classes in workaround for ART instance-of weakening

Bug: b/349857231
Bug: b/350689668
Change-Id: I85f86f63b402a77a118126e6151d8bba96f32f41
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/RuntimeWorkaroundCodeRewriter.java b/src/main/java/com/android/tools/r8/ir/optimize/RuntimeWorkaroundCodeRewriter.java
index 188c5ef..bcb57ce 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/RuntimeWorkaroundCodeRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/RuntimeWorkaroundCodeRewriter.java
@@ -109,7 +109,8 @@
               instanceOf.type().toTypeElement(appView, valueType.nullability());
           if (instanceOfType.isClassType(t -> t.getClassType().isNotIdenticalTo(objectType))
               && !instanceOfType.lessThanOrEqual(valueType, appView)
-              && !valueType.lessThanOrEqual(instanceOfType, appView)) {
+              && !valueType.lessThanOrEqual(instanceOfType, appView)
+              && !valueType.isBasedOnMissingClass(appView.withClassHierarchy())) {
             instructionIterator.replaceCurrentInstructionWithConstFalse(code);
             didReplaceInstructions = true;
           }