radeonsi: skip blit incompatible scenarios

When has_image_opcodes is missing only a subset of tests can
be executed.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34574>
This commit is contained in:
Pierre-Eric Pelloux-Prayer 2025-04-02 13:59:40 +02:00 committed by Marge Bot
parent 992a340eab
commit 2ab7ff51b9

View file

@ -219,6 +219,9 @@ void si_test_blit_perf(struct si_screen *sscreen)
for (unsigned dim = 1; dim <= 3; dim++) {
for (unsigned format_index = 0; format_index < ARRAY_SIZE(formats); format_index++) {
for (unsigned samples = 1; samples <= 8; samples *= 2) {
if (!sscreen->info.has_image_opcodes && samples > 1)
break;
for (unsigned layout = 0; layout < NUM_LAYOUTS; layout++) {
/* Reject invalid combinations. */
if (samples >= 2 && (dim != 2 || layout != LAYOUT_T2T))
@ -242,6 +245,9 @@ void si_test_blit_perf(struct si_screen *sscreen)
util_format_is_pure_integer(formats[format_index]))
continue;
if (!sscreen->info.has_image_opcodes && layout != LAYOUT_L2L)
continue;
/* Create textures. */
struct pipe_resource *src[2] = {0}, *dst[2] = {0};
const struct pipe_resource templ = {