diff --git a/src/panfrost/bifrost/bi_schedule.c b/src/panfrost/bifrost/bi_schedule.c index f6652aa1135..47444b87ce0 100644 --- a/src/panfrost/bifrost/bi_schedule.c +++ b/src/panfrost/bifrost/bi_schedule.c @@ -204,6 +204,7 @@ bi_schedule(bi_context *ctx) u->branch_constant = true; u->clause_type = bi_clause_type_for_ins(ins); + u->block = (struct bi_block *) block; list_addtail(&u->link, &bblock->clauses); } diff --git a/src/panfrost/bifrost/compiler.h b/src/panfrost/bifrost/compiler.h index fb95c6d83df..a283f3fed60 100644 --- a/src/panfrost/bifrost/compiler.h +++ b/src/panfrost/bifrost/compiler.h @@ -335,9 +335,14 @@ typedef struct { bi_instruction *add; } bi_bundle; +struct bi_block; + typedef struct { struct list_head link; + /* Link back up for branch calculations */ + struct bi_block *block; + /* A clause can have 8 instructions in bundled FMA/ADD sense, so there * can be 8 bundles. */