From 5130196c0b3cbdb1944918d7f8d4db24d026deea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 18 Jul 2012 02:17:10 +0200 Subject: [PATCH] r600g: try to fix line stippling with lineloops The piglit test is failing, but visually it looks almost correct. --- src/gallium/drivers/r600/r600_state_common.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c index 1a297318669..e819d2f6dcf 100644 --- a/src/gallium/drivers/r600/r600_state_common.c +++ b/src/gallium/drivers/r600/r600_state_common.c @@ -1057,7 +1057,8 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *dinfo) if (prim == V_008958_DI_PT_LINELIST) ls_mask = 1; - else if (prim == V_008958_DI_PT_LINESTRIP) + else if (prim == V_008958_DI_PT_LINESTRIP || + prim == V_008958_DI_PT_LINELOOP) ls_mask = 2; r600_pipe_state_mod_reg(&rctx->vgt, S_028A0C_AUTO_RESET_CNTL(ls_mask) | rctx->pa_sc_line_stipple); r600_pipe_state_mod_reg(&rctx->vgt,