From 627872ef7f8be877cc8c64f0b424827a43ed8ef7 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Thu, 28 May 2020 12:53:22 -0400 Subject: pan/bi: Add branch constant field to IR The offsets used for branches need some extra bits twiddled, so add a field to the clause to indicate this is happening. This is not ambiguous since a clause can only have a single branch. Signed-off-by: Alyssa Rosenzweig Part-of: --- src/panfrost/bifrost/compiler.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/panfrost/bifrost/compiler.h') diff --git a/src/panfrost/bifrost/compiler.h b/src/panfrost/bifrost/compiler.h index b1f7887e587..fb95c6d83df 100644 --- a/src/panfrost/bifrost/compiler.h +++ b/src/panfrost/bifrost/compiler.h @@ -376,6 +376,12 @@ typedef struct { uint64_t constants[8]; unsigned constant_count; + /* Branches encode a constant offset relative to the program counter + * with some magic flags. By convention, if there is a branch, its + * constant will be last. Set this flag to indicate this is required. + */ + bool branch_constant; + /* What type of high latency instruction is here, basically */ unsigned clause_type; } bi_clause; -- cgit v1.2.3