diff options
| author | azidar | 2015-03-04 18:09:03 -0800 |
|---|---|---|
| committer | azidar | 2015-03-04 18:09:03 -0800 |
| commit | b06eba574c7a67df062d50ea03ca7d7a9524c2a3 (patch) | |
| tree | 93f0748e4bf8ac6816bc88b9c507469f847695f1 /src/main/stanza/firrtl-ir.stanza | |
| parent | 6ad6267d26b52258f6e0d4d004aeb5f36856cf95 (diff) | |
Changed lots of directions to genders. Started writing infer-gender pass. Does not compile
Diffstat (limited to 'src/main/stanza/firrtl-ir.stanza')
| -rw-r--r-- | src/main/stanza/firrtl-ir.stanza | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/main/stanza/firrtl-ir.stanza b/src/main/stanza/firrtl-ir.stanza index dc06e891..6cc5cc48 100644 --- a/src/main/stanza/firrtl-ir.stanza +++ b/src/main/stanza/firrtl-ir.stanza @@ -5,7 +5,11 @@ defpackage firrtl.ir2 : public definterface Direction public val INPUT = new Direction public val OUTPUT = new Direction -public val UNKNOWN-DIR = new Direction + +definterface Gender +public val MALE = new Gender +public val FEMALE = new Gender + public definterface Width public defstruct UnknownWidth <: Width @@ -115,7 +119,7 @@ public defmulti type (e:Expression) -> Type public defstruct Ref <: Expression : name: Symbol type: Type [multi => false] -public defstruct Field <: Expression : +public defstruct Subfield <: Expression : exp: Expression name: Symbol type: Type [multi => false] @@ -202,12 +206,17 @@ public defstruct UIntType <: Type : public defstruct SIntType <: Type : width: Width public defstruct BundleType <: Type : - ports: List<Port> + ports: List<Field> public defstruct VectorType <: Type : type: Type size: Int public defstruct UnknownType <: Type +public defstruct Field : + name: Symbol + gender: Gender + type: Type + public defstruct Port : name: Symbol direction: Direction |
