nak: Don't write undefined FS outputs

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28377>
This commit is contained in:
Faith Ekstrand 2024-03-25 17:26:39 -05:00 committed by Marge Bot
parent fb15a42357
commit 0d2c5999fd

View file

@ -643,8 +643,12 @@ lower_fs_output_intrin(nir_builder *b, nir_intrinsic_instr *intrin, void *_data)
nir_def *data = intrin->src[0].ssa;
/* The fs_out_nv intrinsic is always scalar */
u_foreach_bit(c, nir_intrinsic_write_mask(intrin))
u_foreach_bit(c, nir_intrinsic_write_mask(intrin)) {
if (nir_scalar_is_undef(nir_scalar_resolved(data, c)))
continue;
nir_fs_out_nv(b, nir_channel(b, data, c), .base = addr + c * 4);
}
nir_instr_remove(&intrin->instr);