From f02678bb50b7301238baf6f51f6a581c718871ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 20 Mar 2024 21:28:33 -0400 Subject: [PATCH] nir/validate: validate interp_mode of load_barycentric_* Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/nir/nir_validate.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/compiler/nir/nir_validate.c b/src/compiler/nir/nir_validate.c index 79fbb0fb953..54dd4353200 100644 --- a/src/compiler/nir/nir_validate.c +++ b/src/compiler/nir/nir_validate.c @@ -623,6 +623,19 @@ validate_intrinsic_instr(nir_intrinsic_instr *instr, validate_state *state) validate_assert(state, instr->def.bit_size >= 8); break; + case nir_intrinsic_load_barycentric_pixel: + case nir_intrinsic_load_barycentric_centroid: + case nir_intrinsic_load_barycentric_sample: + case nir_intrinsic_load_barycentric_at_offset: + case nir_intrinsic_load_barycentric_at_sample: { + enum glsl_interp_mode mode = nir_intrinsic_interp_mode(instr); + validate_assert(state, + mode == INTERP_MODE_NONE || + mode == INTERP_MODE_SMOOTH || + mode == INTERP_MODE_NOPERSPECTIVE); + break; + } + case nir_intrinsic_store_ssbo: case nir_intrinsic_store_shared: case nir_intrinsic_store_global: