Module: Mesa Branch: main Commit: 4ebb5391acf1d0bcd24947af84ce8930a9429894 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4ebb5391acf1d0bcd24947af84ce8930a9429894
Author: Samuel Pitoiset <[email protected]> Date: Fri Apr 22 10:13:56 2022 +0200 nir: mark XFB varyings as unmoveable to prevent them to be remapped XFB varyings are considered as always active IO to prevent them to be removed or compacted. Though, if the NIR linker doesn't mark XFB varyings as unmoveable it still possible to remap other varyings to the same location/component. Fixes KHR-Single-GL46.enhanced_layouts.xfb_override_qualifiers_with_api with Zink and a bunch of other dEQP XFB tests. Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6301 Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16092> --- src/compiler/nir/nir_linking_helpers.c | 3 ++- src/gallium/drivers/zink/ci/zink-radv-fails.txt | 10 ---------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/compiler/nir/nir_linking_helpers.c b/src/compiler/nir/nir_linking_helpers.c index b0ddb36ec7d..1d056fc97b1 100644 --- a/src/compiler/nir/nir_linking_helpers.c +++ b/src/compiler/nir/nir_linking_helpers.c @@ -310,7 +310,8 @@ get_unmoveable_components_masks(nir_shader *shader, /* If we can pack this varying then don't mark the components as * used. */ - if (is_packing_supported_for_type(type)) + if (is_packing_supported_for_type(type) && + !var->data.always_active_io) continue; unsigned location = var->data.location - VARYING_SLOT_VAR0; diff --git a/src/gallium/drivers/zink/ci/zink-radv-fails.txt b/src/gallium/drivers/zink/ci/zink-radv-fails.txt index 40d12da6af4..e1a409973c3 100644 --- a/src/gallium/drivers/zink/ci/zink-radv-fails.txt +++ b/src/gallium/drivers/zink/ci/zink-radv-fails.txt @@ -48,9 +48,6 @@ KHR-GL46.shader_image_load_store.non-layered_binding,Fail # amd issue #6305 KHR-GL46.shader_ballot_tests.ShaderBallotFunctionRead,Fail -# radv issue #6301 -KHR-Single-GL46.enhanced_layouts.xfb_override_qualifiers_with_api,Fail - dEQP-GLES2.functional.clipping.line.wide_line_clip_viewport_center,Fail @@ -188,13 +185,6 @@ dEQP-GLES3.functional.shaders.metamorphic.bubblesort_flag.variant_1,Fail dEQP-GLES3.functional.shaders.metamorphic.bubblesort_flag.variant_2,Fail dEQP-GLES3.functional.shaders.texture_functions.textureprojlodoffset.sampler2dshadow_vertex,Fail dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_vertex,Fail -dEQP-GLES3.functional.transform_feedback.random_full_array_capture.separate.lines.6,Fail -dEQP-GLES3.functional.transform_feedback.random_full_array_capture.separate.points.3,Fail -dEQP-GLES3.functional.transform_feedback.random_full_array_capture.separate.points.6,Fail -dEQP-GLES3.functional.transform_feedback.random.interleaved.triangles.7,Fail -dEQP-GLES3.functional.transform_feedback.random.separate.lines.6,Fail -dEQP-GLES3.functional.transform_feedback.random.separate.points.6,Fail -dEQP-GLES3.functional.transform_feedback.random.separate.triangles.6,Fail # cubes are hard #6270 [email protected]@execution@tex-miplevel-selection gl2:texture() cube,Fail
