Allow more precise dynamic type than abstract value

Change-Id: If19fb0a5b72e294b97cb3b68763b4f230f1ee434
diff --git a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/codescanner/ConcreteClassTypeParameterState.java b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/codescanner/ConcreteClassTypeParameterState.java
index 43da39b..2ef79c7 100644
--- a/src/main/java/com/android/tools/r8/optimize/argumentpropagation/codescanner/ConcreteClassTypeParameterState.java
+++ b/src/main/java/com/android/tools/r8/optimize/argumentpropagation/codescanner/ConcreteClassTypeParameterState.java
@@ -54,7 +54,7 @@
   @Override
   public AbstractValue getAbstractValue(AppView<AppInfoWithLiveness> appView) {
     if (getDynamicType().getNullability().isDefinitelyNull()) {
-      assert abstractValue == null || abstractValue.isNull();
+      assert abstractValue.isNull() || abstractValue.isUnknown();
       return appView.abstractValueFactory().createNullValue();
     }
     return abstractValue;