summaryrefslogtreecommitdiff
path: root/src/compiler/nir/nir_validate.c
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2024-03-20 21:28:33 -0400
committerMarge Bot <emma+marge@anholt.net>2024-03-22 22:39:50 +0000
commitf02678bb50b7301238baf6f51f6a581c718871ee (patch)
tree5989aac750dd2d545956b1d0a26fb8b022205c36 /src/compiler/nir/nir_validate.c
parent4ae952506da105d9e8296aabeced957aaed75c36 (diff)
nir/validate: validate interp_mode of load_barycentric_*
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28312>
Diffstat (limited to 'src/compiler/nir/nir_validate.c')
-rw-r--r--src/compiler/nir/nir_validate.c13
1 files changed, 13 insertions, 0 deletions
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: