On Fri, Dec 16, 2016 at 11:08 AM, Jason Ekstrand <[email protected]> wrote:
> On Thu, Dec 15, 2016 at 6:29 PM, Jason Ekstrand <[email protected]> > wrote: > >> On Dec 15, 2016 3:08 PM, "Eric Anholt" <[email protected]> wrote: >> >> Jason Ekstrand <[email protected]> writes: >> >> > This keeps some of Connor's original code. However, while I was at it, >> > I updated this very old pass to a bit more modern NIR. >> >> I love how much smaller this code is. Assuming that the phi builder >> does that job correctly, this is pretty trivial to read and understand. >> >> >> The bigger vars_to_ssa has been using the phi builder for some time now >> and it's handled everything we've ever thrown at it. >> >> The only things I saw were: >> >> - It doesn't call nir_metadata_preserve() like the old pass did, while >> it adds new SSA values. Seems like it should. >> >> >> Yup. I'll get that fixed. >> >> - It asserts that reg->num_array_elems == 0, while the old pass would >> just skip those. It looks like the only source of arrays would be >> nir_lower_locals_to_regs(), which only i965 is calling. Is that >> something we should be using? Should we be handling the array reg >> case in this pass and in our drivers? >> >> >> I've got a patch for that. I needed it for my hack testing. I'll as it >> to the pass. Incidentally, I don't think the old pass handles either of >> those correctly, it just assumed everything was a "normal" register. >> > > I just sent a v3 with all of the comments addressed. It's currently > running on Jenkins with a hack patch that, instead of just going out of > SSA, goes out of SSA completely, calls regs_to_ssa to go back in, and then > goes out of SSA as normal. I think it's pretty well tested now. :) > > https://cgit.freedesktop.org/~jekstrand/mesa/commit/?h=jenkins_gl > Jenkins is happy with the v3 so, if you like the change, a real review would be nice. :)
_______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
