[Mesa-dev] gl_nir_lower_samplers_as_deref vs drawpixels lowering
airlied at gmail.com
Mon Nov 25 19:52:24 UTC 2019
On Tue, 26 Nov 2019 at 05:19, Marek Olšák <maraeo at gmail.com> wrote:
> The way shader variants work in st/mesa is that NIR is generated, finalized, and stored in the cache. This helps the most common case when there is only one variant. If shader variants make changes to NIR, like adding samplers, uniforms, and inputs, it needs to be finalized again, which means many passes have to be run again.
So this is what's happening, we are calling the gl_nir lowering pass
twice, once for the main shader, once for the variant, the call for
the variant messes up.
More information about the mesa-dev