It will look different with llvmpipe if you use the right debug variables (GALLIVM_DEBUG=no_brilinear,no_quad_lod,no_rho_approx), though still fail. I think the test may not be really valid. This is because if you use texgrad, the driver/hw probably will (or should) use per-pixel lod. But if you don't, it is of course per-quad. For the smallest mip it will only give the same results here if you pick the "right" (top/bottom, left/right) values for doing the lod calculations with implicit lod (that is, the one from the actually active pixel in the quad, so if the active pixel was top/left you must calculate ddx with the top values, and ddy with the left values). And I don't think that is a requirement anywhere. At least that's what I remember... And the cube test is probably not quite right neither (though llvmpipe passes it with those mentioned variables, that is more due to the implementation of cube mapping though - the cube face selection must be done per pixel and not per quad and there's tons of code to get lods right be it implicit or explicit). Don't know though why the test would regress this, as it shouldn't affect it at all with last provoking vertex.
Am 07.04.2015 um 16:28 schrieb Ilia Mirkin: > Oh fun, those tests also fail with nvc0 and llvmpipe. But pass on > softpipe. (The llvmpipe fail is visually different from the nvc0 and > freedreno/a3xx one though.) > > On Tue, Apr 7, 2015 at 10:25 AM, Ilia Mirkin <imir...@alum.mit.edu> wrote: >> Weird, this seems to regress >> >> bin/arb_shader_texture_lod-texgrad >> bin/arb_shader_texture_lod-texgradcube >> >> Visually they look the same, but piglit finds small differences. >> >> On Tue, Apr 7, 2015 at 2:20 AM, Ilia Mirkin <imir...@alum.mit.edu> wrote: >>> On Tue, Apr 7, 2015 at 1:44 AM, Ilia Mirkin <imir...@alum.mit.edu> wrote: >>>> Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> >>>> --- >>>> >>>> Pushing this through a complete piglit run, but it seems to fix >>>> >>>> bin/arb-provoking-vertex-render >>>> >>>> on a3xx. Please take special care to double-check that I didn't mess >>>> up cw/ccw order or something. I'm especially weak on the quadstrip >>>> case. >>>> >>>> src/gallium/auxiliary/indices/u_indices_gen.py | 13 ++++++++++--- >>>> 1 file changed, 10 insertions(+), 3 deletions(-) >>>> >>>> diff --git a/src/gallium/auxiliary/indices/u_indices_gen.py >>>> b/src/gallium/auxiliary/indices/u_indices_gen.py >>>> index 687a717..b17d132 100644 >>>> --- a/src/gallium/auxiliary/indices/u_indices_gen.py >>>> +++ b/src/gallium/auxiliary/indices/u_indices_gen.py >>>> @@ -142,8 +142,12 @@ def do_tri( intype, outtype, ptr, v0, v1, v2, inpv, >>>> outpv ): >>>> tri( intype, outtype, ptr, v2, v0, v1 ) >>>> >>>> def do_quad( intype, outtype, ptr, v0, v1, v2, v3, inpv, outpv ): >>>> - do_tri( intype, outtype, ptr+'+0', v0, v1, v3, inpv, outpv ); >>>> - do_tri( intype, outtype, ptr+'+3', v1, v2, v3, inpv, outpv ); >>>> + if inpv == LAST: >>>> + do_tri( intype, outtype, ptr+'+0', v0, v1, v3, inpv, outpv ); >>>> + do_tri( intype, outtype, ptr+'+3', v1, v2, v3, inpv, outpv ); >>>> + else: >>>> + do_tri( intype, outtype, ptr+'+0', v0, v1, v3, inpv, outpv ); >>>> + do_tri( intype, outtype, ptr+'+3', v0, v3, v2, inpv, outpv ); >>> >>> Erm, make that v0, v1, v2; v0, v2, v3. Oops :) >>> >>>> >>>> def name(intype, outtype, inpv, outpv, pr, prim): >>>> if intype == GENERATE: >>>> @@ -331,7 +335,10 @@ def quadstrip(intype, outtype, inpv, outpv, pr): >>>> print ' i += 4;' >>>> print ' goto restart;' >>>> print ' }' >>>> - do_quad( intype, outtype, 'out+j', 'i+2', 'i+0', 'i+1', 'i+3', inpv, >>>> outpv ); >>>> + if inpv == LAST: >>>> + do_quad( intype, outtype, 'out+j', 'i+2', 'i+0', 'i+1', 'i+3', >>>> inpv, outpv ); >>>> + else: >>>> + do_quad( intype, outtype, 'out+j', 'i+0', 'i+1', 'i+3', 'i+2', >>>> inpv, outpv ); >>>> print ' }' >>>> postamble() >>>> >>>> -- >>>> 2.0.5 >>>> > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.freedesktop.org_mailman_listinfo_mesa-2Ddev&d=AwIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=Vjtt0vs_iqoI31UfJxBl7yv9I2FeiaeAYgMTLKRBc_I&m=WCe6lxrKqxKgvrVHuTpgj1fH76sE-mwWzExbv9DnLQs&s=R37n-HrF-x56UKswGlBbLHCIlZvTk6p-Z99737VvlS8&e= > > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev