From 3c86094371bdeb8f9055dd4886be25ef3996d873 Mon Sep 17 00:00:00 2001 From: Giovanni Mascellani Date: Wed, 10 Apr 2024 13:18:02 +0200 Subject: [PATCH] tests: Mark a sampling test as buggy on llvmpipe. Vulkan doesn't mandate whether sampling exactly in the middle between two levels should resolve to one or the other, while D3D specifies that it should result into sampling the higher level. llvmpipe happens to choose the lower one instead, at least in some cases. --- tests/d3d12.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/d3d12.c b/tests/d3d12.c index fb8e5648..d67a2d22 100644 --- a/tests/d3d12.c +++ b/tests/d3d12.c @@ -14180,6 +14180,7 @@ static void test_sample_instructions(void) float ps_constants[4]; const unsigned int *expected_data; bool bug_on_mvk; + bool bug_on_llvmpipe; } tests[] = { @@ -14209,7 +14210,7 @@ static void test_sample_instructions(void) {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {-1.0f}, rgba_level_0}, {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {0.0f}, rgba_level_0}, {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {0.4f}, rgba_level_0}, - {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {0.5f}, level_1_colors, true}, + {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {0.5f}, level_1_colors, true, true}, {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {0.6f}, level_1_colors}, {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {1.0f}, level_1_colors}, {&ps_sample_l, &rgba_texture, POINT, 0.0f, 0.0f, MIP_MAX, {1.4f}, level_1_colors}, @@ -14359,6 +14360,7 @@ static void test_sample_instructions(void) break; } bug_if(tests[i].bug_on_mvk && is_mvk_device(device)) + bug_if(tests[i].bug_on_llvmpipe && is_llvmpipe_device(device)) ok(!fail, "Got color 0x%08x, expected 0x%08x at (%u, %u).\n", color, tests[i].expected_data[tests[i].texture->width * y + x], x, y); release_resource_readback(&rb);