radv: fix wide lines with multisample enabled

When set, EXPAND_LINE_WIDTH expands the line width by 1/cos(a),
where a is the minimum angle from horizontal or vertical. This
seems required by OpenGL line rasterization but not by Vulkan.

Similar to what AMDVLK and AMDGPU-PRO do for AA wide lines.

This fixes
dEQP-VK.rasterization.interpolation_multisample_*_bit.*lines_wide.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5698>
This commit is contained in:
Samuel Pitoiset
2020-06-30 19:10:36 +02:00
committed by Marge Bot
parent efec833a18
commit 11a6a96f8a
8 changed files with 0 additions and 43 deletions

View File

@@ -27,12 +27,6 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_bvec3
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_bvec3_requiredsubgroupsize64
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_dvec3

View File

@@ -13,9 +13,3 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide

View File

@@ -13,9 +13,3 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide

View File

@@ -11,12 +11,6 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_bvec3
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_bvec3_requiredsubgroupsize64
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_dvec3

View File

@@ -7,12 +7,6 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_bvec3
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_bvec3_requiredsubgroupsize64
dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_dvec3

View File

@@ -13,9 +13,3 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide

View File

@@ -11,9 +11,3 @@ dEQP-VK.rasterization.interpolation.basic.non_strict_lines_wide
dEQP-VK.rasterization.interpolation.projected.lines_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_line_strip_wide
dEQP-VK.rasterization.interpolation.projected.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_2_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_4_bit.non_strict_lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.lines_wide
dEQP-VK.rasterization.interpolation_multisample_8_bit.non_strict_lines_wide

View File

@@ -1154,7 +1154,6 @@ radv_pipeline_init_multisample_state(struct radv_pipeline *pipeline,
unsigned log_z_samples = util_logbase2(z_samples);
unsigned log_ps_iter_samples = util_logbase2(ps_iter_samples);
ms->pa_sc_mode_cntl_0 |= S_028A48_MSAA_ENABLE(1);
ms->pa_sc_line_cntl |= S_028BDC_EXPAND_LINE_WIDTH(1); /* CM_R_028BDC_PA_SC_LINE_CNTL */
ms->db_eqaa |= S_028804_MAX_ANCHOR_SAMPLES(log_z_samples) |
S_028804_PS_ITER_SAMPLES(log_ps_iter_samples) |
S_028804_MASK_EXPORT_NUM_SAMPLES(log_samples) |