From 7fe9e790e72bacd4617e4ed288e6161b69235f7d Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Tue, 19 Feb 2019 13:25:02 -0500 Subject: [PATCH] freedreno: fix crash w/ masked non-SSA dst Fixes dEQP-GLES3.functional.shaders.indexing.varying_array.vec3_dynamic_write_dynamic_loop_read regression. Fixes: c1a27ba9baf freedreno/ir3: HIGH reg w/a for a6xx Signed-off-by: Rob Clark --- src/freedreno/ir3/ir3_context.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/freedreno/ir3/ir3_context.c b/src/freedreno/ir3/ir3_context.c index 1fc453c..d768c21 100644 --- a/src/freedreno/ir3/ir3_context.c +++ b/src/freedreno/ir3/ir3_context.c @@ -251,6 +251,8 @@ put_dst(struct ir3_context *ctx, nir_dest *dst) * ir3_cp will clean up the extra mov: */ for (unsigned i = 0; i < ctx->last_dst_n; i++) { + if (!ctx->last_dst[i]) + continue; if (ctx->last_dst[i]->regs[0]->flags & IR3_REG_HIGH) { ctx->last_dst[i] = ir3_MOV(ctx->block, ctx->last_dst[i], TYPE_U32); } -- 2.7.4