Fix missing type propagation in processMethodsNeverReturningNormally()

Change-Id: Iec3b2970ac199d253d3e999c8eff2faff7429d0a
Bug: 151043073
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java b/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java
index f77eb9e..a8a4101 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java
@@ -2703,7 +2703,10 @@
         throwNullInsnIterator.replaceCurrentInstruction(notReachableThrow);
       }
     }
-    code.removeUnreachableBlocks();
+    Set<Value> affectedValues = code.removeUnreachableBlocks();
+    if (!affectedValues.isEmpty()) {
+      new TypeAnalysis(appView).narrowing(affectedValues);
+    }
     assert code.isConsistentSSA();
   }