[Mesa-stable] [PATCH] i965/fs: Reset the register file to VGRF in lower_integer_multiplication

Jason Ekstrand jason at jlekstrand.net
Thu Jan 25 22:01:34 UTC 2018


On Thu, Jan 25, 2018 at 10:08 AM, Matt Turner <mattst88 at gmail.com> wrote:

> On Fri, Dec 15, 2017 at 5:12 PM, Jason Ekstrand <jason at jlekstrand.net>
> wrote:
> > 18fde36ced4279f2577097a1a7d31b55f2f5f141 changed the way temporary
> > registers were allocated in lower_integer_multiplication so that we
> > allocate regs_written(inst) space and keep the stride of the original
> > destination register.  This was to ensure that any MUL which originally
> > followed the CHV/BXT integer multiply regioning restrictions would
> > continue to follow those restrictions even after lowering.  This works
> > fine except that I forgot to reset the register file to VGRF so, even
> > though they were assigned a number from alloc.allocate(), they had the
> > wrong register file.  This caused some GLES 3.0 CTS tests to start
> > failing on Sandy Bridge due to attempted reads from the MRF:
> >
> >     ES3-CTS.functional.shaders.precision.int.highp_mul_fragment.snbm64
> >     ES3-CTS.functional.shaders.precision.int.mediump_mul_fragment.snbm64
> >     ES3-CTS.functional.shaders.precision.int.lowp_mul_fragment.snbm64
> >     ES3-CTS.functional.shaders.precision.uint.highp_mul_fragment.snbm64
> >     ES3-CTS.functional.shaders.precision.uint.mediump_mul_
> fragment.snbm64
> >     ES3-CTS.functional.shaders.precision.uint.lowp_mul_fragment.snbm64
> >
> > This commit remedies this problem by, instead of copying inst->dst and
> > overwriting nr, just make a new register and set the region to match
> > inst->dst.
> >
> > Cc: Matt Turner <mattst88 at gmail.com>
> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103626
> > Fixes: 18fde36ced4279f2577097a1a7d31b55f2f5f141
> > Cc: "17.3" <mesa-stable at lists.freedesktop.org>
>
> Thanks. Sorry this got lost. Looks like it was sent the day I started
> vacation.
>
> Reviewed-by: Matt Turner <mattst88 at gmail.com>
>

Thanks!  I'll give it one more run through Jenkins and land it.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-stable/attachments/20180125/53b9858f/attachment.html>


More information about the mesa-stable mailing list