summaryrefslogtreecommitdiff
path: root/assembler/lex.l
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2006-08-28 23:05:51 -0700
committerDamien Lespiau <damien.lespiau@intel.com>2013-03-04 15:54:22 +0000
commit0ed5d93cc2f7aa74a10674c8ea0c9a0125a8521f (patch)
tree2e5f80c97c9cc61c756c85b2f0ca9abb8df79941 /assembler/lex.l
parent6a88ada7e8b1ea241c037137d7f88ab22a0e1812 (diff)
Add support for predicate control.
This is untested on programs using predicate control, and also causes a shift/reduce conflict.
Diffstat (limited to 'assembler/lex.l')
-rw-r--r--assembler/lex.l11
1 files changed, 11 insertions, 0 deletions
diff --git a/assembler/lex.l b/assembler/lex.l
index 282449b0..5deb3c95 100644
--- a/assembler/lex.l
+++ b/assembler/lex.l
@@ -104,6 +104,7 @@ int saved_state = INITIAL;
"}" { return RCURLY; }
"," { return COMMA; }
"." { return DOT; }
+"+" { return PLUS; }
"-" { return MINUS; }
"(abs)" { return ABS; }
@@ -239,6 +240,16 @@ int saved_state = INITIAL;
"signed" { return SIGNED; }
"scalar" { return SCALAR; }
+ /* predicate control */
+"any2h" { return ANY2H; }
+"all2h" { return ALL2H; }
+"any4h" { return ANY4H; }
+"all4h" { return ALL4H; }
+"any8h" { return ANY8H; }
+"all8h" { return ALL8H; }
+"any16h" { return ANY16H; }
+"all16h" { return ALL16H; }
+
/* channel selectors */
"x" {
yylval.integer = BRW_CHANNEL_X;