mirror of https://github.com/zachjs/sv2v.git
fix function and task input types
This commit is contained in:
parent
edaff3dcf6
commit
5de77ab62d
|
|
@ -25,9 +25,17 @@ convert :: AST -> AST
|
|||
convert = traverseDescriptions convertDescription
|
||||
|
||||
convertDescription :: Description -> Description
|
||||
convertDescription (orig @ (Part _ Module _ _ _ _)) =
|
||||
traverseModuleItems (traverseDecls convertDecl . convertModuleItem) orig
|
||||
convertDescription orig =
|
||||
if shouldConvert
|
||||
then traverseModuleItems conversion orig
|
||||
else orig
|
||||
where
|
||||
shouldConvert = case orig of
|
||||
Part _ Interface _ _ _ _ -> False
|
||||
Part _ Module _ _ _ _ -> True
|
||||
PackageItem _ -> True
|
||||
Directive _ -> False
|
||||
conversion = traverseDecls convertDecl . convertModuleItem
|
||||
idents = execWriter (collectModuleItemsM regIdents orig)
|
||||
convertModuleItem :: ModuleItem -> ModuleItem
|
||||
convertModuleItem (MIDecl (Variable dir (IntegerVector TLogic sg mr) ident a me)) =
|
||||
|
|
@ -42,7 +50,6 @@ convertDescription (orig @ (Part _ Module _ _ _ _)) =
|
|||
convertDecl (Variable d (IntegerVector TLogic sg rs) x a me) =
|
||||
Variable d (IntegerVector TReg sg rs) x a me
|
||||
convertDecl other = other
|
||||
convertDescription other = other
|
||||
|
||||
regIdents :: ModuleItem -> Writer RegIdents ()
|
||||
regIdents (AlwaysC _ stmt) =
|
||||
|
|
|
|||
|
|
@ -779,8 +779,12 @@ makeInput (Variable _ t x a me) = Variable Input t x a me
|
|||
makeInput other = error $ "unexpected non-var decl: " ++ (show other)
|
||||
|
||||
defaultFuncInput :: Decl -> Decl
|
||||
defaultFuncInput (Variable Input (Implicit sg rs) x a me) =
|
||||
Variable Input (IntegerVector TLogic sg rs) x a me
|
||||
defaultFuncInput (Variable dir (Implicit sg rs) x a me) =
|
||||
Variable dir t x a me
|
||||
where
|
||||
t = if dir == Input || dir == Inout
|
||||
then IntegerVector TLogic sg rs
|
||||
else Implicit sg rs
|
||||
defaultFuncInput other = other
|
||||
|
||||
combineTags :: Maybe Identifier -> Maybe Identifier -> Maybe Identifier
|
||||
|
|
|
|||
Loading…
Reference in New Issue