On August 25, 2017 12:14:20 PM Eric Anholt <e...@anholt.net> wrote:

Qiang Yu <yuq...@gmail.com> writes:

Hi Eric,

I'm working on lima gp compiler which should benefit from nir lowering
uniform load to scalar.
I notice you write the nir_lower_io_to_scalar.c which support lowering
shader_in/shader_out
but left the uniform lowering in vc4 driver, any reason why not
implement in the nir_lower_io_to_scalar.c?

I think my theory was that drivers would want different units for the
base/offset (bytes or dwords), so I left it in vc4.  Anyone else want to
weigh in on this?  vc4 wants indirect load offsets in units of bytes.

We could do the same thing as nir_lower_io and pass a size function in. I've thought about doing some sort of io secularization for our driver but it already handles the vectors so there's no rush. It would also be a reasonable thing to just combine lower_io_to_scalar with lower_io and just let the driver indicate what it wants scalarized. Just thoughts...

--Jason

I'm new to nir, tried to add it but seems not correct after
optimization pass. So I should missing
some place, anyone can help to point out?

Your nir_lower_io.c code looks correct to me, so I'm not sure what might
be missing.  I'm not sure about using the component field, though -- for
VC4 all I want after lowering is a byte offset within the constant
buffer.



----------
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to