Mesa (master): nir/validate: validate that tex deref sources are actually derefs
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Mar 29 15:03:53 UTC 2019
Module: Mesa
Branch: master
Commit: fea0caea2b2344c6c8d8110a8b31b1de17464483
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fea0caea2b2344c6c8d8110a8b31b1de17464483
Author: Karol Herbst <kherbst at redhat.com>
Date: Sun Mar 24 05:36:36 2019 +0100
nir/validate: validate that tex deref sources are actually derefs
Signed-off-by: Karol Herbst <kherbst at redhat.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
---
src/compiler/nir/nir_validate.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/compiler/nir/nir_validate.c b/src/compiler/nir/nir_validate.c
index ef2e2b62783..80f397098a2 100644
--- a/src/compiler/nir/nir_validate.c
+++ b/src/compiler/nir/nir_validate.c
@@ -596,6 +596,17 @@ validate_tex_instr(nir_tex_instr *instr, validate_state *state)
src_type_seen[instr->src[i].src_type] = true;
validate_src(&instr->src[i].src, state,
0, nir_tex_instr_src_size(instr, i));
+
+ switch (instr->src[i].src_type) {
+ case nir_tex_src_texture_deref:
+ case nir_tex_src_sampler_deref:
+ validate_assert(state, instr->src[i].src.is_ssa);
+ validate_assert(state,
+ instr->src[i].src.ssa->parent_instr->type == nir_instr_type_deref);
+ break;
+ default:
+ break;
+ }
}
if (nir_tex_instr_has_explicit_tg4_offsets(instr)) {
More information about the mesa-commit
mailing list