3685528c1e
In general we should only call it once, and then we should avoid to call any lowering that introduce back copies. So far we were tracking that manually out of the nir shader on several places. Ideally we would like to add a nir_validate rule, but right now there are some exceptions to this rule. For example right now the Intel compiler calls nir_lower_io_to_temporaries as part of linking tess_ctrl/mesh/task sahders. One option would be to allow drivers to reset the value, but for now let's not add that validation rule. Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19338>