aboutsummaryrefslogtreecommitdiff
path: root/src/main/antlr4
diff options
context:
space:
mode:
authorazidar2016-02-09 13:14:52 -0800
committerazidar2016-02-09 18:57:08 -0800
commit57473f4c6a9f35752bb71fc7b8d6b54471aeaa07 (patch)
tree9425ee401579fa3472cd4f2160f0a1258fee9361 /src/main/antlr4
parente63a058b04d428cd407528b0276cc0413b581be2 (diff)
CHIRRTL passes work, parser is updated
Diffstat (limited to 'src/main/antlr4')
-rw-r--r--src/main/antlr4/FIRRTL.g414
1 files changed, 14 insertions, 0 deletions
diff --git a/src/main/antlr4/FIRRTL.g4 b/src/main/antlr4/FIRRTL.g4
index 6e6b972f..59de36dd 100644
--- a/src/main/antlr4/FIRRTL.g4
+++ b/src/main/antlr4/FIRRTL.g4
@@ -57,6 +57,9 @@ stmt
| 'readwriter' '=>' id
)*
'}'
+ | 'cmem' id ':' type
+ | 'smem' id ':' type
+ | mdir 'mport' id '=' id '[' exp ']' exp
| 'inst' id 'of' id
| 'node' id '=' exp
| exp '<=' exp
@@ -68,6 +71,13 @@ stmt
| 'skip'
;
+mdir
+ : 'infer'
+ | 'read'
+ | 'write'
+ | 'rdwr'
+ ;
+
ruw
: 'old'
| 'new'
@@ -129,6 +139,10 @@ keyword
| 'undefined'
| 'mux'
| 'validif'
+ | 'write'
+ | 'read'
+ | 'rdwr'
+ | 'infer'
;
// Parentheses are added as part of name because semantics require no space between primop and open parentheses