aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala
diff options
context:
space:
mode:
authorJack Koenig2018-01-30 12:53:56 -0800
committerJack Koenig2018-01-30 12:53:56 -0800
commitc9d3e257bff74235a75ff5530051e419b9ce8005 (patch)
tree70de3e10760efef858ca78a4e181e28d30984abe /src/main/scala
parent8bdc969f95571fa22b39612d3e3acc69268cf2f0 (diff)
Make Constant Propagation respect dontTouch on registers
Diffstat (limited to 'src/main/scala')
-rw-r--r--src/main/scala/firrtl/transforms/ConstantPropagation.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/main/scala/firrtl/transforms/ConstantPropagation.scala b/src/main/scala/firrtl/transforms/ConstantPropagation.scala
index b767ef65..d08a7e6b 100644
--- a/src/main/scala/firrtl/transforms/ConstantPropagation.scala
+++ b/src/main/scala/firrtl/transforms/ConstantPropagation.scala
@@ -367,7 +367,7 @@ class ConstantPropagation extends Transform {
// Const prop registers that are fed only a constant or a mux between and constant and the
// register itself
// This requires that reset has been made explicit
- case Connect(_, lref @ WRef(lname, ltpe, RegKind, _), expr) => expr match {
+ case Connect(_, lref @ WRef(lname, ltpe, RegKind, _), expr) if !dontTouches.contains(lname) => expr match {
case lit: Literal =>
nodeMap(lname) = constPropExpression(pad(lit, ltpe))
case Mux(_, tval: WRef, fval: Literal, _) if weq(lref, tval) =>