From f7d1f5994872abbf926ff136d188d012c3432dc0 Mon Sep 17 00:00:00 2001 From: Emma Anholt Date: Mon, 13 Apr 2026 11:49:13 -0700 Subject: [PATCH] spirv: Demote the SPIRV 1.6 OpTypeSampledImage on Buffer failure to a warning. The hangover DXVK builds we want to use for arm64 CI hit this path, and we have a perfectly reasonable fallback for handling this case (ignore the sampler, as glslang should have done). Part-of: --- src/compiler/spirv/spirv_to_nir.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index a0e73053561..020de6c2cc5 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -1934,9 +1934,14 @@ validate_image_type_for_sampled_image(struct vtn_builder *b, dim == GLSL_SAMPLER_DIM_SUBPASS_MS, "%s must not have a Dim of SubpassData.", operand); - vtn_fail_if(dim == GLSL_SAMPLER_DIM_BUF && b->version >= 0x10600, - "Starting with SPIR-V 1.6, %s must not have a Dim of Buffer.", + /* While this is invalid, the glslang used by hangover's arm64 DXVK build + * (used in our CI) does hit this path for the builtin YUV conversion + * shaders. + */ + if (dim == GLSL_SAMPLER_DIM_BUF && b->version >= 0x10600) { + vtn_warn("Starting with SPIR-V 1.6, %s must not have a Dim of Buffer.", operand); + } } static void