From: Zack Rusin Date: Fri, 24 Feb 2012 19:26:41 +0000 (-0500) Subject: svga: Fix stencil op mapping X-Git-Tag: mesa-9.0~3028 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5d9bfc4d3f117fd6d95e1818c60f4f7ea47e6929;p=platform%2Fupstream%2Fmesa.git svga: Fix stencil op mapping We were inverting the meaning of the stencil op flags: in svga/d3d the normal incr/decr wraps and the SAT ops clamp. This fixes piglit failures (at least stencil-twoside and stencil-wrap). We should backport this everywhere we can. Reviewed-by: Brian Paul --- diff --git a/src/gallium/drivers/svga/svga_pipe_depthstencil.c b/src/gallium/drivers/svga/svga_pipe_depthstencil.c index c84615a..cb07dbe 100644 --- a/src/gallium/drivers/svga/svga_pipe_depthstencil.c +++ b/src/gallium/drivers/svga/svga_pipe_depthstencil.c @@ -57,10 +57,10 @@ svga_translate_stencil_op(unsigned op) case PIPE_STENCIL_OP_KEEP: return SVGA3D_STENCILOP_KEEP; case PIPE_STENCIL_OP_ZERO: return SVGA3D_STENCILOP_ZERO; case PIPE_STENCIL_OP_REPLACE: return SVGA3D_STENCILOP_REPLACE; - case PIPE_STENCIL_OP_INCR: return SVGA3D_STENCILOP_INCR; - case PIPE_STENCIL_OP_DECR: return SVGA3D_STENCILOP_DECR; - case PIPE_STENCIL_OP_INCR_WRAP: return SVGA3D_STENCILOP_INCRSAT; /* incorrect? */ - case PIPE_STENCIL_OP_DECR_WRAP: return SVGA3D_STENCILOP_DECRSAT; /* incorrect? */ + case PIPE_STENCIL_OP_INCR: return SVGA3D_STENCILOP_INCRSAT; + case PIPE_STENCIL_OP_DECR: return SVGA3D_STENCILOP_DECRSAT; + case PIPE_STENCIL_OP_INCR_WRAP: return SVGA3D_STENCILOP_INCR; + case PIPE_STENCIL_OP_DECR_WRAP: return SVGA3D_STENCILOP_DECR; case PIPE_STENCIL_OP_INVERT: return SVGA3D_STENCILOP_INVERT; default: assert(0);