full_case + parallel_case

This commit is contained in:
Ethan Sifferman 2024-01-28 20:48:54 -08:00
parent 759740ad6a
commit a91541b8c2
2 changed files with 7 additions and 3 deletions

View File

@ -4,7 +4,7 @@
- Conversion for `unique`, `unique0`, and `priority` (verification checks)
-
- This conversion adds full_case and parallel_case synthesis attributes
- for priority and unique respectively.
- for priority and unique modifiers on case statements.
-}
module Convert.Unique (convert) where
@ -28,8 +28,11 @@ convertStmt (Case Priority kw expr cases) =
convertStmt (Case Unique kw expr cases) =
StmtAttr caseAttr caseStmt
where
caseAttr = Attr [("synthesis", Nil), ("parallel_case", Nil)]
caseAttr = Attr [("synthesis", Nil), ("full_case", Nil), ("parallel_case", Nil)]
caseStmt = Case NoCheck kw expr cases
convertStmt (Case Unique0 kw expr cases) =
convertStmt (Case Unique kw expr cases)
StmtAttr caseAttr caseStmt
where
caseAttr = Attr [("synthesis", Nil), ("parallel_case", Nil)]
caseStmt = Case NoCheck kw expr cases
convertStmt other = other

View File

@ -1,2 +1,3 @@
affirm (* synthesis, full_case, parallel_case *)
affirm (* synthesis, parallel_case *)
affirm (* synthesis, full_case *)