Module: Mesa Branch: main Commit: 40e74ed5d3c4da4f7ac1b5a682a9150411ff5e83 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=40e74ed5d3c4da4f7ac1b5a682a9150411ff5e83
Author: Connor Abbott <cwabbo...@gmail.com> Date: Mon Nov 6 17:27:22 2023 +0100 tu: Assume no raster-order attachment access with NULL DS/blend state The spec isn't explicit on this point, but I believe the intent is that if the state is NULL then we're supposed to behave as-if the flags field is 0. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26076> --- src/freedreno/ci/freedreno-a618-fails.txt | 31 ---------------------------- src/freedreno/ci/freedreno-a630-fails.txt | 11 ---------- src/freedreno/ci/freedreno-a660-fails.txt | 34 ------------------------------- src/freedreno/vulkan/tu_pipeline.cc | 8 ++++---- 4 files changed, 4 insertions(+), 80 deletions(-) diff --git a/src/freedreno/ci/freedreno-a618-fails.txt b/src/freedreno/ci/freedreno-a618-fails.txt index fc9b1552cac..ffba7648cfb 100644 --- a/src/freedreno/ci/freedreno-a618-fails.txt +++ b/src/freedreno/ci/freedreno-a618-fails.txt @@ -1297,35 +1297,11 @@ dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_dynamic_extra_bindin dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_extra_bindings,Fail dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_no_variable_size,Fail dEQP-VK.api.version_check.unavailable_entry_points,Fail -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_draw.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.between_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.cmd_buffer_start.null_depth_stencil_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_dynamic.null_rasterization_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.null_depth_stencil_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_good_static.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_good_static.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.between_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.between_pipelines.null_depth_stencil_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_draw.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_draw.null_depth_stencil_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_good_static.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.between_pipelines.null_color_blend_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.between_pipelines.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_rasterization_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_static.null_rasterization_state,Crash dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.line_list.indirect,Fail @@ -1472,8 +1448,6 @@ gmem-dEQP-VK.glsl.derivate.fwidthfine.dynamic_switch.float_highp,Crash gmem-dEQP-VK.glsl.derivate.fwidthfine.dynamic_switch.vec2_highp,Crash gmem-dEQP-VK.glsl.derivate.fwidthfine.dynamic_switch.vec2_mediump,Crash gmem-dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_rasterization_state,Crash -gmem-dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash -gmem-dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_good_static.null_color_blend_state,Crash gmem-dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_good_static.null_rasterization_state,Crash gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.point_list.indirect,Fail gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.triangle_fan.draw,Fail @@ -1667,14 +1641,9 @@ dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_extra_bindings_no_va dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_extra_bindings_no_variable_size,Fail dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_no_variable_size,Fail dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_color_blend_state,Crash dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_rasterization_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_depth_stencil_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.between_pipelines.null_depth_stencil_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.cmd_buffer_start.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.cmd_buffer_start.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.64bit.line_list.draw,Fail dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.64bit.line_strip.draw,Fail dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.64bit.point_list.draw,Fail diff --git a/src/freedreno/ci/freedreno-a630-fails.txt b/src/freedreno/ci/freedreno-a630-fails.txt index 5d25789cc07..19ebf60e931 100644 --- a/src/freedreno/ci/freedreno-a630-fails.txt +++ b/src/freedreno/ci/freedreno-a630-fails.txt @@ -863,15 +863,7 @@ dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_dynamic_no_variable_ dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_no_variable_size,Fail dEQP-VK.api.version_check.unavailable_entry_points,Fail dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_draw.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_static.null_depth_stencil_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.between_pipelines.null_depth_stencil_state,Crash dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.point_list.draw,Fail dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.triangle_list_with_adjacency.indirect,Fail dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.triangle_strip_with_adjacency.draw,Fail @@ -907,7 +899,6 @@ gmem-dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.all_formats.c gmem-dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.all_formats.color.2d_to_3d.r8g8_uint.r16_sfloat.optimal_optimal,Fail gmem-dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.all_formats.color.2d_to_3d.r8g8_unorm.r16_sfloat.general_general,Fail gmem-dEQP-VK.glsl.derivate.dfdy.dynamic_loop.vec4_mediump,Crash -gmem-dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash gmem-dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_rasterization_state,Crash gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.triangle_fan.draw,Fail gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.64bit.line_list_with_adjacency.indirect,Fail @@ -973,14 +964,12 @@ dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.all_formats.color. dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.dimensions.src6x8192_dst6x8192.r4g4b4a4_unorm_pack16.r16_sfloat.optimal_general,Fail dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_no_variable_size,Fail dEQP-VK.pipeline.monolithic.extended_dynamic_state.cmd_buffer_start.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.triangle_strip.draw,Fail gmem-dEQP-VK.api.copy_and_blit.copy_commands2.image_to_image.dimensions.src4x8192_dst4x8192.r4g4b4a4_unorm_pack16.r16_sfloat.general_optimal,Fail gmem-dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.color.2d_to_2d.a8b8g8r8_srgb_pack32.r16g16_sfloat.optimal_optimal,Fail gmem-dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.color.2d_to_3d.a8b8g8r8_unorm_pack32.r16g16_sfloat.general_optimal,Fail gmem-dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.color.2d_to_3d.r8g8_snorm.r16_sfloat.optimal_optimal,Fail gmem-dEQP-VK.glsl.derivate.dfdy.dynamic_if.vec4_highp,Crash -gmem-dEQP-VK.pipeline.monolithic.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.pgq_32bit_xfb_64bit.triangle_strip_with_adjacency.draw,Fail stale-regs-dEQP-VK.api.copy_and_blit.copy_commands2.image_to_image.all_formats.color.2d_to_2d.r5g6b5_unorm_pack16.r16_sfloat.general_optimal,Fail stale-regs-dEQP-VK.api.copy_and_blit.copy_commands2.image_to_image.all_formats.color.2d_to_3d.r8g8_snorm.r16_sfloat.optimal_general,Fail diff --git a/src/freedreno/ci/freedreno-a660-fails.txt b/src/freedreno/ci/freedreno-a660-fails.txt index 1b9f84e05c8..7c1c56cd200 100644 --- a/src/freedreno/ci/freedreno-a660-fails.txt +++ b/src/freedreno/ci/freedreno-a660-fails.txt @@ -955,50 +955,19 @@ dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_extra_bindings dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer_no_variable_size,Fail dEQP-VK.api.version_check.unavailable_entry_points,Fail dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_rasterization_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_draw.null_depth_stencil_state,Crash dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_draw.null_rasterization_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_rasterization_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.cmd_buffer_start.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.cmd_buffer_start.null_depth_stencil_state,Crash dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.cmd_buffer_start.null_rasterization_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash -dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.null_depth_stencil_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_good_static.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.between_pipelines.null_rasterization_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.cmd_buffer_start.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.null_rasterization_state,Crash -dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_depth_stencil_state,Crash dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.after_pipelines.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.after_pipelines.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_draw.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_draw.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_draw.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_good_static.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.before_good_static.null_depth_stencil_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.between_pipelines.null_depth_stencil_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.cmd_buffer_start.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.cmd_buffer_start.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.cmd_buffer_start.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_rasterization_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_static.null_color_blend_state,Crash -dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_static.null_depth_stencil_state,Crash dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.line_list.draw,Fail dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.line_list.indirect,Fail dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_3.32bit.line_list_with_adjacency.draw,Fail @@ -1162,9 +1131,6 @@ gmem-dEQP-VK.api.maintenance3_check.support_count_storage_image_extra_bindings,F gmem-dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_extra_bindings,Fail gmem-dEQP-VK.dynamic_rendering.complete_secondary_cmd_buff.suballocation.load_store_op_none.depthstencil_d32_sfloat_s8_uint_load_op_depth_load_stencil_none_store_op_depth_store_stencil_none_stencil_write_off,Fail gmem-dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.null_rasterization_state,Crash -gmem-dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.cmd_buffer_start.null_depth_stencil_state,Crash -gmem-dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_color_blend_state,Crash -gmem-dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.two_draws_dynamic.null_depth_stencil_state,Crash gmem-dEQP-VK.subgroups.vote.frag_helper.subgroupallequal_ivec2_fragment,Fail gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.triangle_fan.draw,Fail gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.triangle_list.draw,Fail diff --git a/src/freedreno/vulkan/tu_pipeline.cc b/src/freedreno/vulkan/tu_pipeline.cc index 79fe07d082b..93ef4df36b9 100644 --- a/src/freedreno/vulkan/tu_pipeline.cc +++ b/src/freedreno/vulkan/tu_pipeline.cc @@ -3692,9 +3692,9 @@ tu_pipeline_builder_parse_depth_stencil( (builder->graphics_state.rp->attachment_aspects & VK_IMAGE_ASPECT_DEPTH_BIT)) { pipeline->ds.raster_order_attachment_access = - ds_info->flags & + ds_info && (ds_info->flags & (VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM | - VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM); + VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM)); } } @@ -3731,8 +3731,8 @@ tu_pipeline_builder_parse_multisample_and_color_blend( if (builder->graphics_state.rp->attachment_aspects & VK_IMAGE_ASPECT_COLOR_BIT) { pipeline->output.raster_order_attachment_access = - blend_info->flags & - VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM; + blend_info && (blend_info->flags & + VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM); } }