mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 03:08:05 +02:00
llvmpipe: fix edge-rule logic for lines
In2737abb44e, the handling of pixel-offsets and edge rules were untangled, but one case was missed. This fixes the following dEQP test-cases on VirGL + LLVMpipe - dEQP-GLES2.functional.draw.random.10 - dEQP-GLES2.functional.draw.random.42 - dEQP-GLES3.functional.draw.random.105 - dEQP-GLES3.functional.draw.random.114 - dEQP-GLES3.functional.draw.random.135 - dEQP-GLES3.functional.draw.random.144 - dEQP-GLES3.functional.draw.random.155 - dEQP-GLES3.functional.draw.random.174 - dEQP-GLES3.functional.draw.random.206 - dEQP-GLES3.functional.draw.random.31 - dEQP-GLES3.functional.draw.random.43 - dEQP-GLES3.functional.draw.random.84 - dEQP-GLES31.functional.draw_indirect.random.20 ...as well as these on Zink + Lavapipe: - spec@nv_primitive_restart@primitive-restart-disable_vbo - spec@nv_primitive_restart@primitive-restart-vbo_combined_vertex_and_index - spec@nv_primitive_restart@primitive-restart-vbo_index_only - spec@nv_primitive_restart@primitive-restart-vbo_separate_vertex_and_index - spec@nv_primitive_restart@primitive-restart-vbo_vertex_only Fixes:2737abb44e("gallium: Replace gl_rasterization_rules with lower_left_origin and half_pixel_center.") Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11183>
This commit is contained in:
parent
d0d1b66d8e
commit
2812f030f1
5 changed files with 1 additions and 36 deletions
|
|
@ -671,7 +671,7 @@ try_setup_line( struct lp_setup_context *setup,
|
|||
plane[i].c++;
|
||||
}
|
||||
else if (plane[i].dcdx == 0) {
|
||||
if (pixel_offset == 0) {
|
||||
if (setup->bottom_edge_rule == 0) {
|
||||
/* correct for top-left fill convention:
|
||||
*/
|
||||
if (plane[i].dcdy > 0) plane[i].c++;
|
||||
|
|
|
|||
|
|
@ -5,8 +5,6 @@ dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_center,Fail
|
|||
dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_corner,Fail
|
||||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z,Fail
|
||||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z,Fail
|
||||
dEQP-GLES2.functional.draw.random.10,Fail
|
||||
dEQP-GLES2.functional.draw.random.42,Fail
|
||||
dEQP-GLES2.functional.polygon_offset.default_displacement_with_units,Fail
|
||||
dEQP-GLES2.functional.polygon_offset.fixed16_displacement_with_units,Fail
|
||||
dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide,Fail
|
||||
|
|
@ -22,16 +20,6 @@ dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_center,Fail
|
|||
dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_corner,Fail
|
||||
dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z,Fail
|
||||
dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z,Fail
|
||||
dEQP-GLES3.functional.draw.random.105,Fail
|
||||
dEQP-GLES3.functional.draw.random.114,Fail
|
||||
dEQP-GLES3.functional.draw.random.135,Fail
|
||||
dEQP-GLES3.functional.draw.random.144,Fail
|
||||
dEQP-GLES3.functional.draw.random.155,Fail
|
||||
dEQP-GLES3.functional.draw.random.174,Fail
|
||||
dEQP-GLES3.functional.draw.random.206,Fail
|
||||
dEQP-GLES3.functional.draw.random.31,Fail
|
||||
dEQP-GLES3.functional.draw.random.43,Fail
|
||||
dEQP-GLES3.functional.draw.random.84,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.default_framebuffer.rgb8_linear_scale_blit_from_default,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_x,Fail
|
||||
|
|
@ -522,7 +510,6 @@ dEQP-GLES31.functional.draw_indirect.compute_interop.separate.drawelements_compu
|
|||
dEQP-GLES31.functional.draw_indirect.compute_interop.separate.drawelements_compute_data_and_indices,Fail
|
||||
dEQP-GLES31.functional.draw_indirect.compute_interop.separate.drawelements_compute_data,Fail
|
||||
dEQP-GLES31.functional.draw_indirect.compute_interop.separate.drawelements_compute_indices,Fail
|
||||
dEQP-GLES31.functional.draw_indirect.random.20,Fail
|
||||
dEQP-GLES31.functional.image_load_store.2d_array.atomic.exchange_r32f_result,Crash
|
||||
dEQP-GLES31.functional.image_load_store.2d_array.atomic.exchange_r32f_return_value,Crash
|
||||
dEQP-GLES31.functional.image_load_store.2d_array.format_reinterpret.r32f_r32i,Fail
|
||||
|
|
|
|||
|
|
@ -5,8 +5,6 @@ dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_center,Fail
|
|||
dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_corner,Fail
|
||||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z,Fail
|
||||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z,Fail
|
||||
dEQP-GLES2.functional.draw.random.10,Fail
|
||||
dEQP-GLES2.functional.draw.random.42,Fail
|
||||
dEQP-GLES2.functional.polygon_offset.default_displacement_with_units,Fail
|
||||
dEQP-GLES2.functional.polygon_offset.fixed16_displacement_with_units,Fail
|
||||
dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide,Fail
|
||||
|
|
@ -22,16 +20,6 @@ dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_center,Fail
|
|||
dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_corner,Fail
|
||||
dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z,Fail
|
||||
dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z,Fail
|
||||
dEQP-GLES3.functional.draw.random.105,Fail
|
||||
dEQP-GLES3.functional.draw.random.114,Fail
|
||||
dEQP-GLES3.functional.draw.random.135,Fail
|
||||
dEQP-GLES3.functional.draw.random.144,Fail
|
||||
dEQP-GLES3.functional.draw.random.155,Fail
|
||||
dEQP-GLES3.functional.draw.random.174,Fail
|
||||
dEQP-GLES3.functional.draw.random.206,Fail
|
||||
dEQP-GLES3.functional.draw.random.31,Fail
|
||||
dEQP-GLES3.functional.draw.random.43,Fail
|
||||
dEQP-GLES3.functional.draw.random.84,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_x,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_src_dst_x,Fail
|
||||
|
|
@ -64,7 +52,6 @@ dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide,Fail
|
|||
dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.8,Fail
|
||||
dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.4,Fail
|
||||
dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.9,Fail
|
||||
dEQP-GLES31.functional.draw_indirect.random.20,Fail
|
||||
KHR-GL30.transform_feedback.api_errors_test,Fail
|
||||
KHR-GL30.transform_feedback.capture_vertex_interleaved_test,Fail
|
||||
KHR-GL30.transform_feedback.capture_vertex_separate_test,Fail
|
||||
|
|
|
|||
|
|
@ -4,14 +4,10 @@ dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_corner,Fail
|
|||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_pos_x_and_neg_y_neg_z_and_pos_y_pos_z,Fail
|
||||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z,Fail
|
||||
dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z,Fail
|
||||
dEQP-GLES2.functional.draw.random.10,Fail
|
||||
dEQP-GLES2.functional.draw.random.42,Fail
|
||||
dEQP-GLES2.functional.polygon_offset.default_displacement_with_units,Fail
|
||||
dEQP-GLES2.functional.polygon_offset.fixed16_displacement_with_units,Fail
|
||||
dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_center,Fail
|
||||
dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z,Fail
|
||||
dEQP-GLES3.functional.draw.random.135,Fail
|
||||
dEQP-GLES3.functional.draw.random.31,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_reverse_src_dst_x,Fail
|
||||
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_reverse_src_x,Fail
|
||||
|
|
|
|||
|
|
@ -557,8 +557,3 @@ spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb,Fail
|
|||
spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb@sRGB decode,Fail
|
||||
spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb-fp,Fail
|
||||
spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb-fp@sRGB decode full precision,Fail
|
||||
spec@nv_primitive_restart@primitive-restart-disable_vbo,Fail
|
||||
spec@nv_primitive_restart@primitive-restart-vbo_combined_vertex_and_index,Fail
|
||||
spec@nv_primitive_restart@primitive-restart-vbo_index_only,Fail
|
||||
spec@nv_primitive_restart@primitive-restart-vbo_separate_vertex_and_index,Fail
|
||||
spec@nv_primitive_restart@primitive-restart-vbo_vertex_only,Fail
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue