From: Alyssa Rosenzweig Date: Sat, 3 Aug 2019 00:09:54 +0000 (-0700) Subject: pan/midgard: Pass uploaded midgard_instruction through X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e7ac46be7aaa81bf060d415085a0278c819f4b2a;p=mesa.git pan/midgard: Pass uploaded midgard_instruction through We want to edit it after emission in some cases. Signed-off-by: Alyssa Rosenzweig --- diff --git a/src/panfrost/midgard/compiler.h b/src/panfrost/midgard/compiler.h index c466ad6a3ab..899b4c60074 100644 --- a/src/panfrost/midgard/compiler.h +++ b/src/panfrost/midgard/compiler.h @@ -278,10 +278,12 @@ mir_upload_ins(struct midgard_instruction ins) return heap; } -static inline void +static inline midgard_instruction * emit_mir_instruction(struct compiler_context *ctx, struct midgard_instruction ins) { - list_addtail(&(mir_upload_ins(ins))->link, &ctx->current_block->instructions); + midgard_instruction *u = mir_upload_ins(ins); + list_addtail(&u->link, &ctx->current_block->instructions); + return u; } static inline struct midgard_instruction * @@ -526,7 +528,7 @@ void mir_create_pipeline_registers(compiler_context *ctx); void midgard_promote_uniforms(compiler_context *ctx, unsigned promoted_count); -void +midgard_instruction * emit_ubo_read( compiler_context *ctx, unsigned dest, diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c index c0eedb8e1f0..fb3921effbc 100644 --- a/src/panfrost/midgard/midgard_compile.c +++ b/src/panfrost/midgard/midgard_compile.c @@ -1139,7 +1139,7 @@ emit_alu(compiler_context *ctx, nir_alu_instr *instr) /* Uniforms and UBOs use a shared code path, as uniforms are just (slightly * optimized) versions of UBO #0 */ -void +midgard_instruction * emit_ubo_read( compiler_context *ctx, unsigned dest, @@ -1164,7 +1164,7 @@ emit_ubo_read( ins.load_store.arg_1 = index; - emit_mir_instruction(ctx, ins); + return emit_mir_instruction(ctx, ins); } static void