summaryrefslogtreecommitdiff
path: root/chiselFrontend/src/main/scala/chisel3/core/Reg.scala
diff options
context:
space:
mode:
authorducky2018-05-09 17:07:13 -0700
committerRichard Lin2018-07-04 18:39:28 -0500
commit7834f0ada9f8bcfc28c1d6124f63acdcaa2d4755 (patch)
treef086a643a249a04e4929bf12c9d508cf3fea2087 /chiselFrontend/src/main/scala/chisel3/core/Reg.scala
parentb74034446223db6731c7e4f2eb362b3349efc8be (diff)
work on new style literal accessors
Diffstat (limited to 'chiselFrontend/src/main/scala/chisel3/core/Reg.scala')
-rw-r--r--chiselFrontend/src/main/scala/chisel3/core/Reg.scala9
1 files changed, 3 insertions, 6 deletions
diff --git a/chiselFrontend/src/main/scala/chisel3/core/Reg.scala b/chiselFrontend/src/main/scala/chisel3/core/Reg.scala
index 14674b37..16244d12 100644
--- a/chiselFrontend/src/main/scala/chisel3/core/Reg.scala
+++ b/chiselFrontend/src/main/scala/chisel3/core/Reg.scala
@@ -69,13 +69,10 @@ object RegInit {
* Register type is inferred from the initializer.
*/
def apply[T <: Data](init: T)(implicit sourceInfo: SourceInfo, compileOptions: CompileOptions): T = {
- val model = (init.litArg match {
+ val model = (init match {
// For e.g. Reg(init=UInt(0, k)), fix the Reg's width to k
- case Some(lit) if lit.forcedWidth => init.cloneTypeFull
- case _ => init match {
- case init: Bits => init.cloneTypeWidth(Width())
- case init => init.cloneTypeFull
- }
+ case init: Bits if init.litIsForcedWidth == Some(false) => init.cloneTypeWidth(Width())
+ case init => init.cloneTypeFull
}).asInstanceOf[T]
RegInit(model, init)
}