From 8653734c3eaac2e4a1cc53e545ef11b80b03af4d Mon Sep 17 00:00:00 2001 From: Albert Magyar Date: Mon, 18 May 2020 08:25:56 -0700 Subject: Canonicalize init of regs with zero as reset in RemoveReset (#1627) * Fixes #1561 * Add test for zero-reset reg from #1561--- src/main/scala/firrtl/transforms/RemoveReset.scala | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/main') diff --git a/src/main/scala/firrtl/transforms/RemoveReset.scala b/src/main/scala/firrtl/transforms/RemoveReset.scala index 530b12d9..2db93626 100644 --- a/src/main/scala/firrtl/transforms/RemoveReset.scala +++ b/src/main/scala/firrtl/transforms/RemoveReset.scala @@ -56,8 +56,9 @@ object RemoveReset extends Transform with DependencyAPIMigration { /* A register is initialized to an invalid expression */ case reg @ DefRegister(_, _, _, _, _, init) if invalids.contains(we(init)) => reg.copy(reset = Utils.zero, init = WRef(reg)) - case reg @ DefRegister(_, rname, _, _, reset, init) - if reset != Utils.zero && reset.tpe != AsyncResetType => + case reg @ DefRegister(_, rname, _, _, Utils.zero, _) => + reg.copy(init = WRef(reg)) // canonicalize + case reg @ DefRegister(_, rname, _, _, reset, init) if reset.tpe != AsyncResetType => // Add register reset to map resets(rname) = Reset(reset, init) reg.copy(reset = Utils.zero, init = WRef(reg)) -- cgit v1.2.3