ac/nir/ps: fix null export write mask miss set to 0xf
authorRhys Perry <pendingchaos02@gmail.com>
Tue, 25 Apr 2023 13:13:11 +0000 (21:13 +0800)
committerMarge Bot <emma+marge@anholt.net>
Wed, 26 Apr 2023 03:27:26 +0000 (03:27 +0000)
Fixes: c1821544562 ("ac/nir: add ac_nir_lower_ps")
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22199>

src/amd/common/ac_nir_lower_ps.c

index cdbc3cf..8a7caf6 100644 (file)
@@ -715,9 +715,12 @@ emit_ps_null_export(nir_builder *b, lower_ps_state *s)
    unsigned target = s->options->gfx_level >= GFX11 ?
       V_008DFC_SQ_EXP_MRT : V_008DFC_SQ_EXP_NULL;
 
-   nir_export_amd(b, nir_ssa_undef(b, 4, 32),
-                  .base = target,
-                  .flags = AC_EXP_FLAG_VALID_MASK | AC_EXP_FLAG_DONE);
+   nir_intrinsic_instr *intrin =
+      nir_export_amd(b, nir_ssa_undef(b, 4, 32),
+                     .base = target,
+                     .flags = AC_EXP_FLAG_VALID_MASK | AC_EXP_FLAG_DONE);
+   /* To avoid builder set write mask to 0xf. */
+   nir_intrinsic_set_write_mask(intrin, 0);
 }
 
 static void