Module: Mesa
Branch: main
Commit: 6ddfc5087c6ca312bec532887312c19ee5523fc3
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6ddfc5087c6ca312bec532887312c19ee5523fc3

Author: Mike Blumenkrantz <[email protected]>
Date:   Wed Apr 19 13:32:32 2023 -0400

zink: emit demote cap when using demote

VUID-VkShaderModuleCreateInfo-pCode-01377(ERROR / SPEC): msgNum: 1478567243 - 
Validation Error: [ VUID-VkShaderModuleCreateInfo-pCode-01377 ] Object 0: 
handle = 0x55f304e851c0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x5821254b 
| SPIR-V module not valid: Opcode DemoteToHelperInvocation requires one of 
these capabilities: DemoteToHelperInvocation

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22582>

---

 src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c 
b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
index df3f201a6ec..bb2d79059d0 100644
--- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
+++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
@@ -3240,6 +3240,7 @@ emit_intrinsic(struct ntv_context *ctx, 
nir_intrinsic_instr *intr)
       break;
 
    case nir_intrinsic_demote:
+      spirv_builder_emit_cap(&ctx->builder, 
SpvCapabilityDemoteToHelperInvocation);
       spirv_builder_emit_demote(&ctx->builder);
       break;
 

Reply via email to