Fixes test_gather_c (vkd3d-proton).
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23996>
if ((sampler->compare_mode == PIPE_TEX_COMPARE_NONE) == !!(sample_key & LP_SAMPLER_SHADOW))
return NULL;
+ /* Skip integer formats which would cause a type mismatch in the compare function. */
const struct util_format_description *desc = util_format_description(texture->format);
- if ((sample_key & LP_SAMPLER_SHADOW) && !util_format_has_depth(desc))
+ struct lp_type texel_type = {
+ .floating = true,
+ .width = 32,
+ .length = 1,
+ };
+ texel_type = lp_build_texel_type(texel_type, desc);
+ if ((sample_key & LP_SAMPLER_SHADOW) && !texel_type.floating)
return NULL;
if (texture_dims(texture->target) != 2 && op_type == LP_SAMPLER_OP_GATHER)