diff --git a/src/Convert/Unique.hs b/src/Convert/Unique.hs index e621835..866f314 100644 --- a/src/Convert/Unique.hs +++ b/src/Convert/Unique.hs @@ -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 diff --git a/test/core/case_violation_checks.sv.pat b/test/core/case_violation_checks.sv.pat index 30facab..afa5cb0 100644 --- a/test/core/case_violation_checks.sv.pat +++ b/test/core/case_violation_checks.sv.pat @@ -1,2 +1,3 @@ +affirm (* synthesis, full_case, parallel_case *) affirm (* synthesis, parallel_case *) affirm (* synthesis, full_case *)