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.
_______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
