diff options
Diffstat (limited to 'src/main/scala/firrtl/transforms/CombineCats.scala')
| -rw-r--r-- | src/main/scala/firrtl/transforms/CombineCats.scala | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/main/scala/firrtl/transforms/CombineCats.scala b/src/main/scala/firrtl/transforms/CombineCats.scala index 3014d0e3..6d05698f 100644 --- a/src/main/scala/firrtl/transforms/CombineCats.scala +++ b/src/main/scala/firrtl/transforms/CombineCats.scala @@ -7,6 +7,7 @@ import firrtl.PrimOps._ import firrtl.WrappedExpression._ import firrtl.annotations.NoTargetAnnotation import firrtl.options.Dependency +import firrtl.stage.PrettyNoExprInlining import scala.collection.mutable @@ -74,11 +75,18 @@ class CombineCats extends Transform with DependencyAPIMigration { val defaultMaxCatLen = 10 def execute(state: CircuitState): CircuitState = { - val maxCatLen = state.annotations.collectFirst { - case m: MaxCatLenAnnotation => m.maxCatLen - }.getOrElse(defaultMaxCatLen) - - val modulesx = state.circuit.modules.map(CombineCats.onMod(maxCatLen)) - state.copy(circuit = state.circuit.copy(modules = modulesx)) + val run = !state.annotations.contains(PrettyNoExprInlining) + + if (run) { + val maxCatLen = state.annotations.collectFirst { + case m: MaxCatLenAnnotation => m.maxCatLen + }.getOrElse(defaultMaxCatLen) + + val modulesx = state.circuit.modules.map(CombineCats.onMod(maxCatLen)) + state.copy(circuit = state.circuit.copy(modules = modulesx)) + } else { + logger.info(s"--${PrettyNoExprInlining.longOption} specified, skipping...") + state + } } } |
