The lifetime of the params array needs to be match the nir_call_instr itself. So, allocate it using the instruction itself as the context.
Signed-off-by: Kenneth Graunke <kenn...@whitecape.org> --- src/glsl/nir/nir.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) This is the 'nir-memory-v2' branch in my tree. diff --git a/src/glsl/nir/nir.c b/src/glsl/nir/nir.c index 5f86eca..0f807dd 100644 --- a/src/glsl/nir/nir.c +++ b/src/glsl/nir/nir.c @@ -445,7 +445,7 @@ nir_call_instr_create(void *mem_ctx, nir_function_overload *callee) instr->callee = callee; instr->num_params = callee->num_params; - instr->params = ralloc_array(mem_ctx, nir_deref_var *, instr->num_params); + instr->params = ralloc_array(instr, nir_deref_var *, instr->num_params); instr->return_deref = NULL; return instr; -- 2.3.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev