----- Original Message ----- > On 10/30/2012 01:48 PM, jfons...@vmware.com wrote: > > From: José Fonseca<jose.r.fons...@gmail.com> > > > > Tested with a modified glean tstencil2 test. > > --- > > src/gallium/drivers/llvmpipe/lp_bld_depth.c | 10 ++++++++-- > > 1 file changed, 8 insertions(+), 2 deletions(-) > > > > diff --git a/src/gallium/drivers/llvmpipe/lp_bld_depth.c > > b/src/gallium/drivers/llvmpipe/lp_bld_depth.c > > index 8efa75c..5c3715a 100644 > > --- a/src/gallium/drivers/llvmpipe/lp_bld_depth.c > > +++ b/src/gallium/drivers/llvmpipe/lp_bld_depth.c > > @@ -273,11 +273,17 @@ lp_build_stencil_op(struct lp_build_context > > *bld, > > res = lp_build_select(bld, front_facing, res, back_res); > > } > > > > - /* XXX what about the back-face writemask? */ > > - if (stencil[0].writemask != 0xff) { > > + if (stencil[0].writemask != 0xff || > > + (stencil[1].enabled&& front_facing != NULL&& > > stencil[1].writemask != 0xff)) { > > /* mask&= stencil[0].writemask */ > > LLVMValueRef writemask = > > lp_build_const_int_vec(bld->gallivm, bld->type, > > > > stencil[0].writemask); > > + if (stencil[1].enabled&& stencil[1].writemask != > > stencil[0].writemask&& front_facing != NULL) { > > + LLVMValueRef back_writemask = > > lp_build_const_int_vec(bld->gallivm, bld->type, > > + > > > > stencil[1].writemask); > > + writemask = lp_build_select(bld, front_facing, writemask, > > back_writemask); > > + } > > + > > mask = LLVMBuildAnd(builder, mask, writemask, ""); > > /* res = (res& mask) | (stencilVals& ~mask) */ > > res = lp_build_select_bitwise(bld, mask, res, stencilVals); > > > Reviewed-by: Brian Paul <bri...@vmware.com> > > Does this fix https://bugs.freedesktop.org/show_bug.cgi?id=41787 ?
Unfortunately no. Very peculiar bug. Although the symptom is seen in the stencil buffer, I'm getting the feeling that the bug is due to a depth fighting issue, and not a problem in the stencil state translation. Alas it's not a trivial depth fighting issue neither -- fiddling with polygon offset doesn't seem to help in anyway. > If so, maybe make note of that in the commit message. > > Candidate for stable branches? Yes. Thanks for reminding me. Jose _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev