Mesa (master): nir/prog: Don't double-insert the fog-coord variable

Jason Ekstrand jekstrand at kemper.freedesktop.org
Thu Oct 15 17:49:24 UTC 2015


Module: Mesa
Branch: master
Commit: 5f106153f55219d5092f9ba7c019316ea69baef4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f106153f55219d5092f9ba7c019316ea69baef4

Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date:   Thu Oct 15 09:20:24 2015 -0700

nir/prog: Don't double-insert the fog-coord variable

nir_variable_create already inserts it in the right list for us so
inserting it again causes a linked list corruption.

Reviewed-by: Matt Turner <mattst88 at gmail.com>

---

 src/mesa/program/prog_to_nir.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/mesa/program/prog_to_nir.c b/src/mesa/program/prog_to_nir.c
index fe8c238..da61a2b 100644
--- a/src/mesa/program/prog_to_nir.c
+++ b/src/mesa/program/prog_to_nir.c
@@ -1001,11 +1001,10 @@ setup_registers_and_variables(struct ptn_compile *c)
             store->src[0] = nir_src_for_ssa(f001);
             nir_builder_instr_insert(b, &store->instr);
 
-            /* Insert the real input into the list so the driver has real
-             * inputs, but set c->input_vars[i] to the temporary so we use
+            /* We inserted the real input into the list so the driver has real
+             * inputs, but we set c->input_vars[i] to the temporary so we use
              * the splatted value.
              */
-            exec_list_push_tail(&shader->inputs, &var->node);
             c->input_vars[i] = fullvar;
             continue;
          }




More information about the mesa-commit mailing list