Skip to content

nir: properly clear the entry sources in copy_prop_vars

Caio Oliveira requested to merge cmarcelo/mesa:entry-cleanup into master

When updating a copy entry source value from a "non-SSA" (the data come from a copy instruction) to a "SSA" (the data or parts of it come from SSA values), it was possible to hold invalid data in ssa[0] depending on the writemask. Because the union, ssa[0] could contain a pointer to a nir_deref_instr left-over from previous non-SSA usage.

Change code to clean up the array before use to avoid invalid data around.

Fixes: 62332d13 "nir: Add a local variable-based copy propagation pass"

Merge request reports