Module: Mesa
Branch: master
Commit: 19c7b6f9d6a124542f54b6218092ad11dc9b6de1
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=19c7b6f9d6a124542f54b6218092ad11dc9b6de1

Author: Connor Abbott <[email protected]>
Date:   Tue Mar  9 11:26:57 2021 +0100

ir3/parser: Add ability to specify branchstack

This lets you test branching with computerator.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9463>

---

 src/freedreno/ir3/ir3_lexer.l  | 1 +
 src/freedreno/ir3/ir3_parser.y | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/src/freedreno/ir3/ir3_lexer.l b/src/freedreno/ir3/ir3_lexer.l
index 4b6e46453fb..47edd07ee1e 100644
--- a/src/freedreno/ir3/ir3_lexer.l
+++ b/src/freedreno/ir3/ir3_lexer.l
@@ -112,6 +112,7 @@ static int parse_w(const char *str)
 "@invocationid"                   return TOKEN(T_A_INVOCATIONID);
 "@wgid"                           return TOKEN(T_A_WGID);
 "@numwg"                          return TOKEN(T_A_NUMWG);
+"@branchstack"                    return TOKEN(T_A_BRANCHSTACK);
 "@in"                             return TOKEN(T_A_IN);
 "@out"                            return TOKEN(T_A_OUT);
 "@tex"                            return TOKEN(T_A_TEX);
diff --git a/src/freedreno/ir3/ir3_parser.y b/src/freedreno/ir3/ir3_parser.y
index 1f936b57afa..8aad0c68402 100644
--- a/src/freedreno/ir3/ir3_parser.y
+++ b/src/freedreno/ir3/ir3_parser.y
@@ -310,6 +310,7 @@ static void print_token(FILE *file, int type, YYSTYPE value)
 %token <tok> T_A_INVOCATIONID
 %token <tok> T_A_WGID
 %token <tok> T_A_NUMWG
+%token <tok> T_A_BRANCHSTACK
 %token <tok> T_A_IN
 %token <tok> T_A_OUT
 %token <tok> T_A_TEX
@@ -624,6 +625,7 @@ header:            localsize_header
 |                  invocationid_header
 |                  wgid_header
 |                  numwg_header
+|                  branchstack_header
 |                  in_header
 |                  out_header
 |                  tex_header
@@ -670,6 +672,8 @@ numwg_header:      T_A_NUMWG '(' T_CONSTANT ')' {
                        add_const($3, 0, 0, 0, 0);
 }
 
+branchstack_header: T_A_BRANCHSTACK const_val { variant->branchstack = $2; }
+
 /* Stubs for now */
 in_header:         T_A_IN '(' T_REGISTER ')' T_IDENTIFIER '(' T_IDENTIFIER '=' 
integer ')' { }
 

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to