Merge "Integrate RELEASE_R8_GLOBAL_CHECK_NOT_NULL_FLAGS into soong" into main
diff --git a/android/config.go b/android/config.go
index 4b0aebb..f6d08b8 100644
--- a/android/config.go
+++ b/android/config.go
@@ -2188,6 +2188,10 @@
 	return c.productVariables.GetBuildFlagBool("RELEASE_R8_STORE_STORE_FENCE_CONSTRUCTOR_INLINING")
 }
 
+func (c *config) UseR8GlobalCheckNotNullFlags() bool {
+	return c.productVariables.GetBuildFlagBool("RELEASE_R8_GLOBAL_CHECK_NOT_NULL_FLAGS")
+}
+
 func (c *config) UseDexV41() bool {
 	return c.productVariables.GetBuildFlagBool("RELEASE_USE_DEX_V41")
 }
diff --git a/java/dex.go b/java/dex.go
index f121aea..311657f 100644
--- a/java/dex.go
+++ b/java/dex.go
@@ -435,6 +435,11 @@
 		android.PathForSource(ctx, "build/make/core/proguard.flags"),
 	}
 
+	if ctx.Config().UseR8GlobalCheckNotNullFlags() {
+		flagFiles = append(flagFiles, android.PathForSource(ctx,
+			"build/make/core/proguard/checknotnull.flags"))
+	}
+
 	flagFiles = append(flagFiles, d.extraProguardFlagsFiles...)
 	// TODO(ccross): static android library proguard files