[Mesa-dev] [PATCH] svga: issue debug warning for unsupported two-sided stencil state
Brian Paul
brianp at vmware.com
Sat Nov 11 02:40:26 UTC 2017
We only have a single stencil read mask and write mask. Issue a
warning if different front/back values are used. The Piglit
gl-2.0-two-sided-stencil test hits this.
---
src/gallium/drivers/svga/svga_pipe_depthstencil.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/src/gallium/drivers/svga/svga_pipe_depthstencil.c b/src/gallium/drivers/svga/svga_pipe_depthstencil.c
index 1b62290..e5caa4b 100644
--- a/src/gallium/drivers/svga/svga_pipe_depthstencil.c
+++ b/src/gallium/drivers/svga/svga_pipe_depthstencil.c
@@ -172,6 +172,21 @@ svga_create_depth_stencil_state(struct pipe_context *pipe,
ds->stencil_mask = templ->stencil[1].valuemask & 0xff;
ds->stencil_writemask = templ->stencil[1].writemask & 0xff;
+
+ if (templ->stencil[1].valuemask != templ->stencil[0].valuemask) {
+ pipe_debug_message(&svga->debug.callback, CONFORMANCE,
+ "two-sided stencil mask not supported "
+ "(front=0x%x, back=0x%x)",
+ templ->stencil[0].valuemask,
+ templ->stencil[1].valuemask);
+ }
+ if (templ->stencil[1].writemask != templ->stencil[0].writemask) {
+ pipe_debug_message(&svga->debug.callback, CONFORMANCE,
+ "two-sided stencil writemask not supported "
+ "(front=0x%x, back=0x%x)",
+ templ->stencil[0].writemask,
+ templ->stencil[1].writemask);
+ }
}
else {
/* back face state is same as front-face state */
--
1.9.1
More information about the mesa-dev
mailing list