From 64ae2ef8bbc63750346345e331750f0e0c643103 Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Tue, 25 Feb 2020 10:42:57 -0800 Subject: freedreno/ir3: remove extra nops inserted in scheduler They were inserting a nop between back to back SFU instrucions. But that doesn't actually appear to be required. And they get stripped out later anyways before legalize. Signed-off-by: Rob Clark Part-of: --- src/freedreno/ir3/ir3_sched.c | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'src/freedreno/ir3/ir3_sched.c') diff --git a/src/freedreno/ir3/ir3_sched.c b/src/freedreno/ir3/ir3_sched.c index 78f79df7e4e..9c8d3572a23 100644 --- a/src/freedreno/ir3/ir3_sched.c +++ b/src/freedreno/ir3/ir3_sched.c @@ -85,11 +85,6 @@ static bool is_scheduled(struct ir3_instruction *instr) return !!(instr->flags & IR3_INSTR_MARK); } -static bool is_sfu_or_mem(struct ir3_instruction *instr) -{ - return is_sfu(instr) || is_mem(instr); -} - static void unuse_each_src(struct ir3_sched_ctx *ctx, struct ir3_instruction *instr) { @@ -226,13 +221,6 @@ schedule(struct ir3_sched_ctx *ctx, struct ir3_instruction *instr) { debug_assert(ctx->block == instr->block); - /* maybe there is a better way to handle this than just stuffing - * a nop.. ideally we'd know about this constraint in the - * scheduling and depth calculation.. - */ - if (ctx->scheduled && is_sfu_or_mem(ctx->scheduled) && is_sfu_or_mem(instr)) - ir3_NOP(ctx->block); - /* remove from depth list: */ list_delinit(&instr->node); -- cgit v1.2.3