aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlbert Magyar2020-09-04 09:15:50 -0700
committerAlbert Magyar2020-09-04 09:15:50 -0700
commitd836fed6968d78210bd926cd14f9d26f150fc82d (patch)
tree23b88277a6a57719fd9ecc3fe93ef91e868a76ef /src
parent3b12706287bfbb07cff09a101aab1abedb522858 (diff)
Legalize memory port clocks
Diffstat (limited to 'src')
-rw-r--r--src/main/scala/firrtl/transforms/LegalizeClocksAndAsyncResets.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/transforms/LegalizeClocksAndAsyncResets.scala b/src/main/scala/firrtl/transforms/LegalizeClocksAndAsyncResets.scala
index 5a1ccdbf..0edf0cc6 100644
--- a/src/main/scala/firrtl/transforms/LegalizeClocksAndAsyncResets.scala
+++ b/src/main/scala/firrtl/transforms/LegalizeClocksAndAsyncResets.scala
@@ -52,6 +52,9 @@ object LegalizeClocksAndAsyncResetsTransform {
(None, rxClock)
}
Block(clockNodeOpt ++: resetNodeOpt ++: Seq(rx))
+ case Connect(info, loc, rhs @ DoPrim(_, _, _, ClockType)) if (Utils.kind(loc) == MemKind) =>
+ val node = DefNode(info, namespace.newTemp, rhs)
+ Block(node, Connect(info, loc, WRef(node)))
case p: Print if isLiteralExpression(p.clk) =>
val node = DefNode(p.info, namespace.newTemp, p.clk)
val px = p.copy(clk = WRef(node))