diff --git a/.pick_status.json b/.pick_status.json index 88d9456b3fe..faa61734c52 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -3181,7 +3181,7 @@ "description": "llvmpipe: disable 64-bit integer textures.", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c index 94e37dc4fe6..1aa693ff4ca 100644 --- a/src/gallium/drivers/llvmpipe/lp_screen.c +++ b/src/gallium/drivers/llvmpipe/lp_screen.c @@ -735,6 +735,16 @@ llvmpipe_is_format_supported( struct pipe_screen *_screen, format_desc->block.bits != 96) { return false; } + + /* Disable 64-bit integer formats for RT/samplers. + * VK CTS crashes with these and they don't make much sense. + */ + int c = util_format_get_first_non_void_channel(format_desc->format); + if (c >= 0) { + if (format_desc->channel[c].pure_integer && format_desc->channel[c].size == 64) + return false; + } + } if (!(bind & PIPE_BIND_VERTEX_BUFFER) &&