Mesa (master): nvc0: fix line width on GM20x+

Ilia Mirkin imirkin at kemper.freedesktop.org
Sat Apr 21 00:44:23 UTC 2018


Module: Mesa
Branch: master
Commit: a0e57432b76c32f2109dab0ad3df0ba03967441c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a0e57432b76c32f2109dab0ad3df0ba03967441c

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Fri Apr 20 23:32:05 2018 +0100

nvc0: fix line width on GM20x+

This has the side-effect of fixing polygon-offset piglit test failures.

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

 src/gallium/drivers/nouveau/nvc0/nvc0_state.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state.c b/src/gallium/drivers/nouveau/nvc0/nvc0_state.c
index 99d45a238a..3e204f09a4 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_state.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_state.c
@@ -233,7 +233,10 @@ nvc0_rasterizer_state_create(struct pipe_context *pipe,
     SB_IMMED_3D(so, MULTISAMPLE_ENABLE, cso->multisample);
 
     SB_IMMED_3D(so, LINE_SMOOTH_ENABLE, cso->line_smooth);
-    if (cso->line_smooth || cso->multisample)
+    /* On GM20x+, LINE_WIDTH_SMOOTH controls both aliased and smooth
+     * rendering and LINE_WIDTH_ALIASED seems to be ignored
+     */
+    if (cso->line_smooth || cso->multisample || class_3d >= GM200_3D_CLASS)
        SB_BEGIN_3D(so, LINE_WIDTH_SMOOTH, 1);
     else
        SB_BEGIN_3D(so, LINE_WIDTH_ALIASED, 1);




More information about the mesa-commit mailing list