diff options
author | Jason Ekstrand <[email protected]> | 2015-04-02 12:32:39 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2015-04-03 14:04:31 -0700 |
commit | dccc57eaba5e5920a6c151e7abb386a636ebf861 (patch) | |
tree | 572bb62c3a4e3739420682de7728490dc0f3d2e4 /src/glsl/nir/nir_from_ssa.c | |
parent | 7bdba4a24583f4cc2f9bca94f975cec9d384cddc (diff) |
nir/from_ssa: Don't set reg->parent_instr for ssa_undef instructions
Reviewed-by: Jordan Justen <[email protected]>
Diffstat (limited to 'src/glsl/nir/nir_from_ssa.c')
-rw-r--r-- | src/glsl/nir/nir_from_ssa.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/glsl/nir/nir_from_ssa.c b/src/glsl/nir/nir_from_ssa.c index c3090fb06f4..184698abd5c 100644 --- a/src/glsl/nir/nir_from_ssa.c +++ b/src/glsl/nir/nir_from_ssa.c @@ -509,12 +509,13 @@ get_register_for_ssa_def(nir_ssa_def *def, struct from_ssa_state *state) reg->num_components = def->num_components; reg->num_array_elems = 0; - /* This register comes from an SSA definition that was not part of a - * phi-web. Therefore, we know it has a single unique definition - * that dominates all of its uses. Therefore, we can copy the + /* This register comes from an SSA definition that is defined and not + * part of a phi-web. Therefore, we know it has a single unique + * definition that dominates all of its uses; we can copy the * parent_instr from the SSA def safely. */ - reg->parent_instr = def->parent_instr; + if (def->parent_instr->type != nir_instr_type_ssa_undef) + reg->parent_instr = def->parent_instr; _mesa_hash_table_insert(state->ssa_table, def, reg); return reg; |