[Mesa-dev] [PATCH v3 08/12] nir/from_ssa: Don't try to read an invalid instruction

Connor Abbott cwabbott0 at gmail.com
Mon Feb 16 12:57:52 PST 2015


Now that we talked about this on the last version of this patch, this
makes more sense. But I'd like to see something in the commit message
explaining what the issue was (going too far and casting the exec_node
embedded in the block to a nir_instr) and how you put the patch that
changes the behavior of nir_instr_prev() to actually fix this next in
order to avoid segfaults in the middle of the series.

On Mon, Feb 9, 2015 at 11:24 PM, Jason Ekstrand <jason at jlekstrand.net> wrote:
> ---
>  src/glsl/nir/nir_from_ssa.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/glsl/nir/nir_from_ssa.c b/src/glsl/nir/nir_from_ssa.c
> index 3625237..7c50095 100644
> --- a/src/glsl/nir/nir_from_ssa.c
> +++ b/src/glsl/nir/nir_from_ssa.c
> @@ -272,7 +272,7 @@ get_parallel_copy_at_end_of_block(nir_block *block)
>     if (last_instr->type == nir_instr_type_jump)
>        last_instr = nir_instr_prev(last_instr);
>
> -   if (last_instr->type == nir_instr_type_parallel_copy)
> +   if (last_instr && last_instr->type == nir_instr_type_parallel_copy)
>        return nir_instr_as_parallel_copy(last_instr);
>     else
>        return NULL;
> --
> 2.2.2
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list