From d186766c08867d5447e32c427ff092612bd4ba92 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 9 Nov 2020 16:49:44 +1000 Subject: [PATCH] llvmpipe: just use draw_regions in draw/line setup. This fixes: dEQP-VK.draw.scissor* Cc: 20.3 Reviewed-by: Roland Scheidegger Part-of: --- src/gallium/drivers/llvmpipe/lp_setup_line.c | 13 +++---------- src/gallium/drivers/llvmpipe/lp_setup_tri.c | 13 +++---------- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/src/gallium/drivers/llvmpipe/lp_setup_line.c b/src/gallium/drivers/llvmpipe/lp_setup_line.c index cc44b20c86c..d552e9519ce 100644 --- a/src/gallium/drivers/llvmpipe/lp_setup_line.c +++ b/src/gallium/drivers/llvmpipe/lp_setup_line.c @@ -597,16 +597,9 @@ try_setup_line( struct lp_setup_context *setup, * Determine how many scissor planes we need, that is drop scissor * edges if the bounding box of the tri is fully inside that edge. */ - if (setup->scissor_test) { - /* why not just use draw_regions */ - scissor = &setup->scissors[viewport_index]; - scissor_planes_needed(s_planes, &bboxpos, scissor); - nr_planes += s_planes[0] + s_planes[1] + s_planes[2] + s_planes[3]; - } else { - scissor = &setup->draw_regions[viewport_index]; - scissor_planes_needed(s_planes, &bboxpos, scissor); - nr_planes += s_planes[0] + s_planes[1] + s_planes[2] + s_planes[3]; - } + scissor = &setup->draw_regions[viewport_index]; + scissor_planes_needed(s_planes, &bboxpos, scissor); + nr_planes += s_planes[0] + s_planes[1] + s_planes[2] + s_planes[3]; line = lp_setup_alloc_triangle(scene, key->num_inputs, diff --git a/src/gallium/drivers/llvmpipe/lp_setup_tri.c b/src/gallium/drivers/llvmpipe/lp_setup_tri.c index 90a4ee3b364..68fece55ca7 100644 --- a/src/gallium/drivers/llvmpipe/lp_setup_tri.c +++ b/src/gallium/drivers/llvmpipe/lp_setup_tri.c @@ -359,16 +359,9 @@ do_triangle_ccw(struct lp_setup_context *setup, * Determine how many scissor planes we need, that is drop scissor * edges if the bounding box of the tri is fully inside that edge. */ - if (setup->scissor_test) { - /* why not just use draw_regions */ - scissor = &setup->scissors[viewport_index]; - scissor_planes_needed(s_planes, &bboxpos, scissor); - nr_planes += s_planes[0] + s_planes[1] + s_planes[2] + s_planes[3]; - } else { - scissor = &setup->draw_regions[viewport_index]; - scissor_planes_needed(s_planes, &bboxpos, scissor); - nr_planes += s_planes[0] + s_planes[1] + s_planes[2] + s_planes[3]; - } + scissor = &setup->draw_regions[viewport_index]; + scissor_planes_needed(s_planes, &bboxpos, scissor); + nr_planes += s_planes[0] + s_planes[1] + s_planes[2] + s_planes[3]; tri = lp_setup_alloc_triangle(scene, key->num_inputs,