diff options
| author | alonamid | 2018-05-11 14:50:05 -0700 |
|---|---|---|
| committer | Adam Izraelevitz | 2018-05-11 14:50:05 -0700 |
| commit | abcb22d6c34eb51749e7bc848b437a165bc5b330 (patch) | |
| tree | b63d8bc97bd6b750d36dcacc913816f095b1db1f /src/main/scala/firrtl/analyses | |
| parent | 77cfdbf05cafa78946a5684a0e4a530ebecd6547 (diff) | |
TopWiring Transform (#798)
* top wiring transform
* fixup comments
* TopWiring cosmetics
* move prefix into TopWiringAnnotation
* remove test function from transform file
* add ChildrenMap to InstanceGraph API
* use namespaces
* remove wiringUtils from TopWiring pass
* enable multiple output functions
* TopWiring cosmetics, tests and lowform
Diffstat (limited to 'src/main/scala/firrtl/analyses')
| -rw-r--r-- | src/main/scala/firrtl/analyses/InstanceGraph.scala | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/main/scala/firrtl/analyses/InstanceGraph.scala b/src/main/scala/firrtl/analyses/InstanceGraph.scala index c6e590af..91cf8d44 100644 --- a/src/main/scala/firrtl/analyses/InstanceGraph.scala +++ b/src/main/scala/firrtl/analyses/InstanceGraph.scala @@ -18,7 +18,7 @@ import firrtl.Mappers._ */ class InstanceGraph(c: Circuit) { - private val moduleMap = c.modules.map({m => (m.name,m) }).toMap + val moduleMap = c.modules.map({m => (m.name,m) }).toMap private val instantiated = new mutable.HashSet[String] private val childInstances = new mutable.HashMap[String,mutable.Set[WDefInstance]] @@ -93,6 +93,14 @@ class InstanceGraph(c: Circuit) { def moduleOrder: Seq[DefModule] = { graph.transformNodes(_.module).linearize.map(moduleMap(_)) } + + + /** Given a circuit, returns a map from module name to children + * instance/module definitions + */ + def getChildrenInstances: scala.collection.Map[String,mutable.Set[WDefInstance]] = childInstances + + } object InstanceGraph { |
