From 37d58b816b1c605ead63eae44422338f87e43cec Mon Sep 17 00:00:00 2001 From: Faith Ekstrand Date: Wed, 3 Jul 2024 13:33:00 -0500 Subject: [PATCH] vulkan/meta: Use demote instead of discard We don't have the NIR options when we go to create the shader so nir_discard_if() will segfault. Fixes: 9b1a748b5ed4 ("nir: remove nir_intrinsic_discard") Part-of: --- src/vulkan/runtime/vk_meta_blit_resolve.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vulkan/runtime/vk_meta_blit_resolve.c b/src/vulkan/runtime/vk_meta_blit_resolve.c index 955f1544df0..5ac8643813f 100644 --- a/src/vulkan/runtime/vk_meta_blit_resolve.c +++ b/src/vulkan/runtime/vk_meta_blit_resolve.c @@ -315,8 +315,8 @@ build_blit_shader(const struct vk_meta_blit_key *key) if (key->stencil_as_discard) { assert(key->aspects == VK_IMAGE_ASPECT_STENCIL_BIT); nir_def *stencil_bit = nir_channel(b, z_xform, 3); - nir_discard_if(b, nir_ieq(b, nir_iand(b, val, stencil_bit), - nir_imm_int(b, 0))); + nir_demote_if(b, nir_ieq(b, nir_iand(b, val, stencil_bit), + nir_imm_int(b, 0))); } else { const struct glsl_type *out_type = glsl_vector_type(base_type, out_comps);