diff --git a/src/main/java/com/android/tools/r8/kotlin/KotlinMetadataRewriter.java b/src/main/java/com/android/tools/r8/kotlin/KotlinMetadataRewriter.java
index 04392f3..583bd40 100644
--- a/src/main/java/com/android/tools/r8/kotlin/KotlinMetadataRewriter.java
+++ b/src/main/java/com/android/tools/r8/kotlin/KotlinMetadataRewriter.java
@@ -89,17 +89,21 @@
     GraphLens kotlinMetadataLens = appView.getKotlinMetadataLens();
     DexType rewrittenMetadataType =
         graphLens.lookupClassType(factory.kotlinMetadataType, kotlinMetadataLens);
-    DexClass kotlinMetadata = appView.definitionFor(rewrittenMetadataType);
+    // The Kotlin metadata may be present in the input but pruned away in the final tree shaking.
+    DexClass kotlinMetadata =
+        appView.appInfo().definitionForWithoutExistenceAssert(rewrittenMetadataType);
     WriteMetadataFieldInfo writeMetadataFieldInfo =
-        new WriteMetadataFieldInfo(
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.kind),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.metadataVersion),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.bytecodeVersion),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.data1),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.data2),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.extraString),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.packageName),
-            kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.extraInt));
+        kotlinMetadata == null
+            ? WriteMetadataFieldInfo.rewriteAll()
+            : new WriteMetadataFieldInfo(
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.kind),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.metadataVersion),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.bytecodeVersion),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.data1),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.data2),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.extraString),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.packageName),
+                kotlinMetadataFieldExists(kotlinMetadata, appView, kotlin.metadata.extraInt));
     ThreadUtils.processItems(
         appView.appInfo().classes(),
         clazz -> {
