nir: Use nir_foreach_ssa_def for setting up ssa destinations
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 16 Dec 2014 03:38:14 +0000 (19:38 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Thu, 15 Jan 2015 15:20:22 +0000 (07:20 -0800)
commit28a3e164e275114fa536023d6594bbbcbae18157
tree144c1b32cc6dd93636b7bbaf58a0c49785442631
parent193fea9eb6a7ad72360a3ac65b322bab081f9587
nir: Use nir_foreach_ssa_def for setting up ssa destinations

Before, we were using foreach_dest and switching on whether the destination
was an SSA value.  This works, except not all destinations are SSA values
so we have to special-case ssa_undef instructions.  Now that we have a
foreach_ssa_def function, we can iterate over all of the register
destinations in one pass and iterate over the SSA destinations in a second.
This way, if we add other ssa-only instructions, we won't have to worry
about adding them to the special case we have for ssa_undef.

Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
src/glsl/nir/nir.c