From: Neil Roberts <nrobe...@igalia.com>

Whenever SpvOpEndPrimitive or SpvOpEndStreamPrimitive is encountered
it now sets uses_end_primitive to true. This reflects the code in
validate_geometry_shader_emissions for GLSL.
---
 src/compiler/spirv/spirv_to_nir.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/compiler/spirv/spirv_to_nir.c 
b/src/compiler/spirv/spirv_to_nir.c
index 238298a8340..4d297e60b60 100644
--- a/src/compiler/spirv/spirv_to_nir.c
+++ b/src/compiler/spirv/spirv_to_nir.c
@@ -3208,6 +3208,7 @@ vtn_handle_barrier(struct vtn_builder *b, SpvOp opcode,
       case SpvOpEndPrimitive:
       case SpvOpEndStreamPrimitive:
          intrinsic_op = nir_intrinsic_end_primitive;
+         b->shader->info.gs.uses_end_primitive = true;
          break;
       default:
          unreachable("Invalid opcode");
-- 
2.14.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to