[Mesa-dev] i965 brw_eu_emit and SF code generator cleanups
Matt Turner
mattst88 at gmail.com
Sun May 25 13:16:18 PDT 2014
On Sun, May 25, 2014 at 1:08 AM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> Hello,
>
> Matt and I have some ideas for how we could share more code between the
> Gen4-7 and Gen8+ compiler backends---hopefully removing the duplicate
> generators. Before we get there, though, I'd like to change the Gen4-7
> brw_eu_emit layer to work more like the new Gen8 one.
>
> It has a lot of historical craziness---some functions randomly turn on
> predication, sometimes for one instruction, sometimes for all time...
> ome other functions turn it back off...sometimes you have to do it
> yourself. It's a mess.
>
> struct brw_compile also contains a field called "flag_value", which
> has always seemed rather mystical. It turns out that it's trying to
> track the value of the flag register...for the specific usage of the
> SF program. For general shaders, we obviously can't track that.
>
> This patch series moves flag_value to brw_sf_compile, and eliminates
> a bit of the implicit state whacking. There's more to do, but I've
> already hit 10 patches, so...sending them out.
>
> I tested it on Crestline, and also diffed assembly for every Piglit
> test before and after the change. There were no changes. So I'm
> pretty confident this is correct.
>
> --Ken
I think I spotted a problem in 03/10, but the rest of the series is
Reviewed-by: Matt Turner <mattst88 at gmail.com>
and with 03/10 fixed it gets the same.
More information about the mesa-dev
mailing list