aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlbert Magyar2019-06-28 14:46:40 -0700
committermergify[bot]2019-06-28 21:46:40 +0000
commitbdd6bf92e0a1a256856005f7acada3555cf28e79 (patch)
tree288741234bd1c1fed045a6592ba8a6d518c52345 /src
parent6a466c2c15579e63bf54aa5b999f5876f335ac6f (diff)
Remove deprecated ComponentName from CombinationalPath annotation (#1107)
Diffstat (limited to 'src')
-rw-r--r--src/main/scala/firrtl/transforms/CheckCombLoops.scala14
-rw-r--r--src/test/scala/firrtlTests/CheckCombLoopsSpec.scala7
2 files changed, 10 insertions, 11 deletions
diff --git a/src/main/scala/firrtl/transforms/CheckCombLoops.scala b/src/main/scala/firrtl/transforms/CheckCombLoops.scala
index 24aaed80..d1d98872 100644
--- a/src/main/scala/firrtl/transforms/CheckCombLoops.scala
+++ b/src/main/scala/firrtl/transforms/CheckCombLoops.scala
@@ -40,11 +40,11 @@ case class ExtModulePathAnnotation(source: ReferenceTarget, sink: ReferenceTarge
}
}
-case class CombinationalPath(sink: ComponentName, sources: Seq[ComponentName]) extends Annotation {
+case class CombinationalPath(sink: ReferenceTarget, sources: Seq[ReferenceTarget]) extends Annotation {
override def update(renames: RenameMap): Seq[Annotation] = {
- val newSources: Seq[IsComponent] = sources.flatMap { s => renames.get(s).getOrElse(Seq(s.toTarget)) }.collect {case x: IsComponent if x.isLocal => x}
- val newSinks = renames.get(sink).getOrElse(Seq(sink.toTarget)).collect { case x: IsComponent if x.isLocal => x}
- newSinks.map(snk => CombinationalPath(snk.toNamed, newSources.map(_.toNamed)))
+ val newSources = sources.flatMap { s => renames(s) }.collect {case x: ReferenceTarget if x.isLocal => x}
+ val newSinks = renames(sink).collect { case x: ReferenceTarget if x.isLocal => x}
+ newSinks.map(snk => CombinationalPath(snk, newSources))
}
}
@@ -249,10 +249,10 @@ class CheckCombLoops extends Transform with RegisteredTransform {
}
case m => throwInternalError(s"Module ${m.name} has unrecognized type")
}
- val mn = ModuleName(c.main, CircuitName(c.main))
+ val mt = ModuleTarget(c.main, c.main)
val annos = simplifiedModuleGraphs(c.main).getEdgeMap.collect { case (from, tos) if tos.nonEmpty =>
- val sink = ComponentName(from.name, mn)
- val sources = tos.map(x => ComponentName(x.name, mn))
+ val sink = mt.ref(from.name)
+ val sources = tos.map(to => mt.ref(to.name))
CombinationalPath(sink, sources.toSeq)
}
(state.copy(annotations = state.annotations ++ annos), errors, simplifiedModuleGraphs)
diff --git a/src/test/scala/firrtlTests/CheckCombLoopsSpec.scala b/src/test/scala/firrtlTests/CheckCombLoopsSpec.scala
index 98472f14..dc7158bb 100644
--- a/src/test/scala/firrtlTests/CheckCombLoopsSpec.scala
+++ b/src/test/scala/firrtlTests/CheckCombLoopsSpec.scala
@@ -298,10 +298,9 @@ class CheckCombLoopsSpec extends SimpleTransformSpec {
val writer = new java.io.StringWriter
val cs = compile(CircuitState(parse(input), ChirrtlForm), writer)
- val mn = ModuleName("hasnoloops", CircuitName("hasnoloops"))
- cs.annotations.collect {
- case c @ CombinationalPath(ComponentName("b", `mn`), Seq(ComponentName("a", `mn`))) => c
- }.nonEmpty should be (true)
+ val mt = ModuleTarget("hasnoloops", "hasnoloops")
+ val anno = CombinationalPath(mt.ref("b"), Seq(mt.ref("a")))
+ cs.annotations.contains(anno) should be (true)
}
}