diff --git a/src/panfrost/bifrost/compiler.h b/src/panfrost/bifrost/compiler.h index d7c16a83bea..344aab49abf 100644 --- a/src/panfrost/bifrost/compiler.h +++ b/src/panfrost/bifrost/compiler.h @@ -1270,6 +1270,21 @@ bi_after_instr(bi_instr *instr) }; } +static inline bi_cursor +bi_after_block_logical(bi_block *block) +{ + if (list_is_empty(&block->instructions)) + return bi_after_block(block); + + bi_instr *last = list_last_entry(&block->instructions, bi_instr, link); + assert(last != NULL); + + if (last->branch_target) + return bi_before_instr(last); + else + return bi_after_block(block); +} + static inline bi_cursor bi_before_nonempty_block(bi_block *block) {