[Mesa-dev] [PATCH 01/10] nir: Convert ineg(b2i(a)) to a if it's a boolean.
Timothy Arceri
timothy.arceri at collabora.com
Sun Jan 8 11:48:47 UTC 2017
On Sat, 2017-01-07 at 11:03 -0800, Matt Turner wrote:
> On Sat, Jan 7, 2017 at 3:58 AM, Timothy Arceri
> <timothy.arceri at collabora.com> wrote:
> > From: Kenneth Graunke <kenneth at whitecape.org>
> >
> > On BDW:
> >
> > total instructions in shared programs: 13071119 -> 13070371 (-
> > 0.01%)
> > instructions in affected programs: 83424 -> 82676 (-0.90%)
> > helped: 505
> > HURT: 45 (all TCS, all hurt by a single instruction)
>
> I investigated these hurt programs when Ken originally sent the
> patch.
> They're all because of the extra not.nz instruction.
>
> I sent a patch "i965: Turn not.nz x into cmp.z x,0." that fixed that,
> was Ken noticed it was subtly wrong. Maybe you can spot another way
> of
> doing the same thing.
It looks like the real issue is with:
(('ieq', 'a at bool', False), ('inot', 'a')),
This opt just allows the above opt to make progress. We could probably
add something to not match an expression if its used by an if.
>
> Regardless,
>
> Reviewed-by: Matt Turner <mattst88 at gmail.com>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list