From 13355232e4fcd35f73c889751c604180b1454131 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Wed, 24 Aug 2022 09:09:10 +0200 Subject: [PATCH] nir_lower_atomics_to_ssbo: Initialize deref struct This fixes the use of an uninitialzed value: Conditional jump or move depends on uninitialised value(s) bcmp (vg_replace_strmem.c:1203) _mesa_add_sized_state_reference (prog_parameter.c:434) st_nir_assign_uniform_locations(gl_context*, gl_program*, nir_shader*) (st_glsl_to_nir.cpp:209) st_finalize_nir (st_glsl_to_nir.cpp:1041) by 0x58271B9: st_glsl_to_nir_post_opts(st_context*, gl_program*, gl_shader_program*) (st_glsl_to_nir.cpp:571) ... Uninitialised value was created by a heap allocation malloc (vg_replace_malloc.c:381) ralloc_size (ralloc.c:114) ralloc_array_size (ralloc.c:218) deref_offset_var (nir_lower_atomics_to_ssbo.c:47) lower_instr (nir_lower_atomics_to_ssbo.c:111) nir_lower_atomics_to_ssbo (nir_lower_atomics_to_ssbo.c:204) Signed-off-by: Gert Wollny Reviewed-By: Mike Blumenkrantz Part-of: --- src/compiler/nir/nir_lower_atomics_to_ssbo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/nir/nir_lower_atomics_to_ssbo.c b/src/compiler/nir/nir_lower_atomics_to_ssbo.c index a7e10c6a063..7bf7f7b620e 100644 --- a/src/compiler/nir/nir_lower_atomics_to_ssbo.c +++ b/src/compiler/nir/nir_lower_atomics_to_ssbo.c @@ -44,7 +44,7 @@ deref_offset_var(nir_builder *b, unsigned binding, unsigned offset_align_state) } nir_variable *var = nir_variable_create(b->shader, nir_var_uniform, glsl_uint_type(), "offset"); - var->state_slots = ralloc_array(var, nir_state_slot, 1); + var->state_slots = rzalloc_array(var, nir_state_slot, 1); var->state_slots[0].tokens[0] = offset_align_state; var->state_slots[0].tokens[1] = binding; var->num_state_slots = 1;