ir3: Preserve gl_ViewportIndex in the binning shader

Fixes dEQP-VK.draw.shader_viewport_index.* with TU_DEBUG=forcebin.

Fixes: efff734220 ("turnip: multiViewport and VK_EXT_shader_viewport_index_layer")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12104>
(cherry picked from commit 7a14484bca)
This commit is contained in:
Connor Abbott 2021-07-28 16:35:48 +02:00 committed by Dylan Baker
parent d06433f883
commit bfc6597375
3 changed files with 4 additions and 26 deletions

View file

@ -175,7 +175,7 @@
"description": "ir3: Preserve gl_ViewportIndex in the binning shader",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "efff73422049d738b4adfaa34d5fde78a2805d5e"
},

View file

@ -21,30 +21,7 @@ dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail,Fail
dEQP-VK.compute.basic.max_local_size_x,Crash
dEQP-VK.compute.basic.max_local_size_y,Crash
# shader_viewport and atomic_operations fails to reproduce on anholt's cheza,
# even with a failing caselist from CI.
dEQP-VK.draw.shader_viewport_index.fragment_shader_10,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_12,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_13,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_14,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_16,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_2,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_4,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_5,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_6,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_8,Fail
dEQP-VK.draw.shader_viewport_index.fragment_shader_9,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_10,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_11,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_13,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_14,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_15,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_2,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_3,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_5,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_6,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_7,Fail
dEQP-VK.draw.shader_viewport_index.vertex_shader_9,Fail
# only fails with TU_DEBUG=forcebin
dEQP-VK.glsl.atomic_operations.add_unsigned_geometry,Fail
dEQP-VK.glsl.atomic_operations.and_signed_geometry,Fail
dEQP-VK.glsl.atomic_operations.and_unsigned_geometry,Fail

View file

@ -3828,7 +3828,8 @@ static bool
output_slot_used_for_binning(gl_varying_slot slot)
{
return slot == VARYING_SLOT_POS || slot == VARYING_SLOT_PSIZ ||
slot == VARYING_SLOT_CLIP_DIST0 || slot == VARYING_SLOT_CLIP_DIST1;
slot == VARYING_SLOT_CLIP_DIST0 || slot == VARYING_SLOT_CLIP_DIST1 ||
slot == VARYING_SLOT_VIEWPORT;
}
static struct ir3_instruction *