Mesa (master): radeonsi: turn an assertion into return in si_nir_store_output_tcs

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Jan 20 20:44:45 UTC 2020


Module: Mesa
Branch: master
Commit: 679b6244e15622381e8e25dfa61e4be83e741410
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=679b6244e15622381e8e25dfa61e4be83e741410

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Fri Jan 17 19:55:13 2020 -0500

radeonsi: turn an assertion into return in si_nir_store_output_tcs

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>

---

 src/gallium/drivers/radeonsi/si_shader_llvm_tess.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c b/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c
index e809f287ff5..cd0f136e952 100644
--- a/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c
+++ b/src/gallium/drivers/radeonsi/si_shader_llvm_tess.c
@@ -593,9 +593,11 @@ static void si_nir_store_output_tcs(struct ac_shader_abi *abi,
 			      var->data.location == VARYING_SLOT_TESS_LEVEL_INNER ||
 			      var->data.location == VARYING_SLOT_TESS_LEVEL_OUTER;
 
-	assert((name == TGSI_SEMANTIC_PATCH ||
-		name == TGSI_SEMANTIC_TESSINNER ||
-		name == TGSI_SEMANTIC_TESSOUTER) == is_patch);
+	/* Invalid SPIR-V can cause this. */
+	if ((name == TGSI_SEMANTIC_PATCH ||
+	     name == TGSI_SEMANTIC_TESSINNER ||
+	     name == TGSI_SEMANTIC_TESSOUTER) != is_patch)
+		return;
 
 	if (!is_patch) {
 		stride = get_tcs_out_vertex_dw_stride(ctx);



More information about the mesa-commit mailing list