It seems to be season for reducing sgpr usage, but I was looking at the tess/gs sgprs on radv when I realised nothing in them wasn't static from the pipeline at compile time, so there is no need to go passing to the shader via the user sgprs.
This series removes all the tess/gs specific users sgprs from radv. It firstly adds support to the info gathering pass to get the tess outputs for vs/tcs. Then it uses that info and drops each sgpr in turn. It also moves some of the calculation code into the shader side, like lds size. This code should only affect radv specific code in the nir->llvm code. I've tested on vega/vi with a cts subset + shader demos. I'm not really sure this gives any speedup on anything, but it definitely makes the code a lot leaner, I've also probably left the calculations in the ac code a bit verbose to avoid making mistakes when moving them over from the pipeline, these could be cleaned up later. Dave. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev