From: Tomeu Vizoso Date: Tue, 7 May 2019 15:28:36 +0000 (+0200) Subject: panfrost: Fix two uninitialized accesses in compiler X-Git-Tag: upstream/19.3.0~6421 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=554975bafa4ec17e19d90725c66feeb4e1f49d9e;p=platform%2Fupstream%2Fmesa.git panfrost: Fix two uninitialized accesses in compiler Valgrind was complaining of those. NIR_PASS only sets progress to TRUE if there was progress. nir_const_load_to_arr() only sets as many constants as components has the instruction. This was causing some dEQP tests to flip-flop, such as: dEQP-GLES2.functional.fragment_ops.blend.equation_src_func_dst_func.add_src_color_constant_color Signed-off-by: Tomeu Vizoso Reviewed-by: Alyssa Rosenzweig Fixes: 14531d676b11 ("nir: make nir_const_value scalar") --- diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c index eaf4738..25316ca 100644 --- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c +++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c @@ -1020,7 +1020,7 @@ emit_load_const(compiler_context *ctx, nir_load_const_instr *instr) { nir_ssa_def def = instr->def; - float *v = ralloc_array(NULL, float, 4); + float *v = rzalloc_array(NULL, float, 4); nir_const_load_to_arr(v, instr, f32); _mesa_hash_table_u64_insert(ctx->ssa_constants, def.index + 1, v); }