On Tue, Jul 19, 2016 at 12:25 PM, Kenneth Graunke wrote:
> For intrinsics we don't care about, just skip to the next loop iteration
> and process the next instruction. We don't want to execute the rest of
> the code.
>
> This was a bug in commit cdfc05ea6e8c87876cdbf588aa8e03d70f3da4bb.
>
> Signed-off-by: Kenneth Graunke
> ---
> src/compiler/nir/nir_lower_io.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/compiler/nir/nir_lower_io.c b/src/compiler/nir/nir_lower_io.c
> index 71d2432..189370d 100644
> --- a/src/compiler/nir/nir_lower_io.c
> +++ b/src/compiler/nir/nir_lower_io.c
> @@ -352,41 +352,41 @@ nir_lower_io_block(nir_block *block,
>
>case nir_intrinsic_store_var:
> replacement = lower_store(intrin, state, vertex_index, offset);
> break;
>
>case nir_intrinsic_var_atomic_add:
>case nir_intrinsic_var_atomic_imin:
>case nir_intrinsic_var_atomic_umin:
>case nir_intrinsic_var_atomic_imax:
>case nir_intrinsic_var_atomic_umax:
>case nir_intrinsic_var_atomic_and:
>case nir_intrinsic_var_atomic_or:
>case nir_intrinsic_var_atomic_xor:
>case nir_intrinsic_var_atomic_exchange:
>case nir_intrinsic_var_atomic_comp_swap:
> assert(vertex_index == NULL);
> replacement = lower_atomic(intrin, state, offset);
> break;
>
>default:
> - break;
> + continue;
>}
>
>if (nir_intrinsic_infos[intrin->intrinsic].has_dest) {
> if (intrin->dest.is_ssa) {
> nir_ssa_dest_init(>instr, >dest,
>intrin->dest.ssa.num_components,
>intrin->dest.ssa.bit_size, NULL);
> nir_ssa_def_rewrite_uses(>dest.ssa,
>
> nir_src_for_ssa(>dest.ssa));
> } else {
> nir_dest_copy(>dest, >dest, state->mem_ctx);
> }
>}
>
>nir_instr_insert_before(>instr, >instr);
>nir_instr_remove(>instr);
> }
>
> return true;
> }
> --
> 2.9.0
>
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Reviewed-by: Anuj Phogat
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev