From: Boris Brezillon Date: Tue, 27 Aug 2019 18:07:03 +0000 (+0200) Subject: Revert "panfrost: Free all block/instruction objects before leaving midgard_compile_s... X-Git-Tag: upstream/19.3.0~2451 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2734a4951e058509268918613f4fa9c9a5d330c1;p=platform%2Fupstream%2Fmesa.git Revert "panfrost: Free all block/instruction objects before leaving midgard_compile_shader_nir()" This reverts commit 5882e0def97a47aff050f5a3f412b97a7f440e27. This commit causes a segfault. Signed-off-by: Boris Brezillon --- diff --git a/src/panfrost/midgard/compiler.h b/src/panfrost/midgard/compiler.h index d131bb8..f9ba31b 100644 --- a/src/panfrost/midgard/compiler.h +++ b/src/panfrost/midgard/compiler.h @@ -333,9 +333,6 @@ mir_next_op(struct midgard_instruction *ins) #define mir_foreach_block(ctx, v) \ list_for_each_entry(struct midgard_block, v, &ctx->blocks, link) -#define mir_foreach_block_safe(ctx, v) \ - list_for_each_entry_safe(struct midgard_block, v, &ctx->blocks, link) - #define mir_foreach_block_from(ctx, from, v) \ list_for_each_entry_from(struct midgard_block, v, from, &ctx->blocks, link) @@ -395,15 +392,6 @@ mir_next_op(struct midgard_instruction *ins) #define mir_foreach_src(ins, v) \ for (unsigned v = 0; v < ARRAY_SIZE(ins->src); ++v) -static inline void mir_remove_block(struct midgard_block *block) -{ - mir_foreach_instr_in_block_safe(block, ins) - mir_remove_instruction(ins); - - list_del(&block->link); - free(block); -} - static inline midgard_instruction * mir_last_in_block(struct midgard_block *block) { diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c index 56a7524..74511b2 100644 --- a/src/panfrost/midgard/midgard_compile.c +++ b/src/panfrost/midgard/midgard_compile.c @@ -2835,9 +2835,6 @@ midgard_compile_shader_nir(struct midgard_screen *screen, nir_shader *nir, midga ctx->spills, ctx->fills); } - mir_foreach_block_safe(ctx, block) - mir_remove_block(block); - ralloc_free(ctx); return 0;