st/mesa: update VS shader_info for NIR after lowering passes
authorMarek Olšák <marek.olsak@amd.com>
Fri, 18 Oct 2019 22:02:57 +0000 (18:02 -0400)
committerMarek Olšák <marek.olsak@amd.com>
Thu, 24 Oct 2019 01:12:52 +0000 (21:12 -0400)
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/state_tracker/st_program.c

index 21252492fc519a699d3a955e87723ddb2c1ede85..56da0c3353b129a10945494093081d46b0790a7a 100644 (file)
@@ -720,6 +720,10 @@ st_create_vp_variant(struct st_context *st,
       st_finalize_nir(st, &stvp->Base, stvp->shader_program,
                       state.ir.nir);
 
+      /* Some of the lowering above may have introduced new varyings */
+      nir_shader_gather_info(state.ir.nir,
+                             nir_shader_get_entrypoint(state.ir.nir));
+
       vpv->driver_shader = pipe->create_vs_state(pipe, &state);
 
       /* When generating a NIR program, we usually don't have TGSI tokens.