Account for dead Composable functions

Bug: b/302483644
Change-Id: I9c35a73eb839fddeb95c395691aea68b5a991290
diff --git a/src/main/java/com/android/tools/r8/optimize/compose/ComposeMethodProcessor.java b/src/main/java/com/android/tools/r8/optimize/compose/ComposeMethodProcessor.java
index ec12fa0..846dcbe 100644
--- a/src/main/java/com/android/tools/r8/optimize/compose/ComposeMethodProcessor.java
+++ b/src/main/java/com/android/tools/r8/optimize/compose/ComposeMethodProcessor.java
@@ -175,6 +175,12 @@
         asProgramFieldOrNull(appView.definitionFor(singleBaseInFlow.asFieldValue().getField()));
     assert field != null;
 
+    // If the only input to the $$changed parameter of the Composable function is in-flow then skip.
+    if (methodState.getParameterState(parameterIndex).getAbstractValue(appView).isBottom()) {
+      methodState.setParameterState(parameterIndex, ValueState.unknown());
+      return;
+    }
+
     codeScanner
         .getFieldStates()
         .addTemporaryFieldState(