aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/firrtl/passes
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/firrtl/passes')
-rw-r--r--src/main/scala/firrtl/passes/RemoveCHIRRTL.scala4
-rw-r--r--src/main/scala/firrtl/passes/ToWorkingIR.scala19
2 files changed, 3 insertions, 20 deletions
diff --git a/src/main/scala/firrtl/passes/RemoveCHIRRTL.scala b/src/main/scala/firrtl/passes/RemoveCHIRRTL.scala
index af9518e9..67181f2b 100644
--- a/src/main/scala/firrtl/passes/RemoveCHIRRTL.scala
+++ b/src/main/scala/firrtl/passes/RemoveCHIRRTL.scala
@@ -183,7 +183,7 @@ object RemoveCHIRRTL extends Transform with DependencyAPIMigration with Preserve
var has_readwrite_mport: Option[Expression] = None
var has_read_mport: Option[Expression] = None
def remove_chirrtl_e(g: Flow)(e: Expression): Expression = e match {
- case Reference(name, tpe) => refs get name match {
+ case Reference(name, tpe, _, _) => refs get name match {
case Some(p) => g match {
case SinkFlow =>
has_write_mport = true
@@ -200,7 +200,7 @@ object RemoveCHIRRTL extends Transform with DependencyAPIMigration with Preserve
case SourceFlow => e
}
}
- case SubAccess(expr, index, tpe) => SubAccess(
+ case SubAccess(expr, index, tpe, _) => SubAccess(
remove_chirrtl_e(g)(expr), remove_chirrtl_e(SourceFlow)(index), tpe)
case ex => ex map remove_chirrtl_e(g)
}
diff --git a/src/main/scala/firrtl/passes/ToWorkingIR.scala b/src/main/scala/firrtl/passes/ToWorkingIR.scala
index 53936c18..3f044e03 100644
--- a/src/main/scala/firrtl/passes/ToWorkingIR.scala
+++ b/src/main/scala/firrtl/passes/ToWorkingIR.scala
@@ -5,24 +5,7 @@ import firrtl.Mappers._
import firrtl.options.{PreservesAll}
import firrtl.{Transform, UnknownFlow, UnknownKind, WDefInstance, WRef, WSubAccess, WSubField, WSubIndex}
-// These should be distributed into separate files
object ToWorkingIR extends Pass with PreservesAll[Transform] {
-
override def prerequisites = firrtl.stage.Forms.MinimalHighForm
-
- def toExp(e: Expression): Expression = e map toExp match {
- case ex: Reference => WRef(ex.name, ex.tpe, UnknownKind, UnknownFlow)
- case ex: SubField => WSubField(ex.expr, ex.name, ex.tpe, UnknownFlow)
- case ex: SubIndex => WSubIndex(ex.expr, ex.value, ex.tpe, UnknownFlow)
- case ex: SubAccess => WSubAccess(ex.expr, ex.index, ex.tpe, UnknownFlow)
- case ex => ex // This might look like a case to use case _ => e, DO NOT!
- }
-
- def toStmt(s: Statement): Statement = s map toExp match {
- case sx: DefInstance => WDefInstance(sx.info, sx.name, sx.module, UnknownType)
- case sx => sx map toStmt
- }
-
- def run (c:Circuit): Circuit =
- c copy (modules = c.modules map (_ map toStmt))
+ def run(c:Circuit): Circuit = c
}