summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/scala/chisel3/stage/ChiselStage.scala9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/main/scala/chisel3/stage/ChiselStage.scala b/src/main/scala/chisel3/stage/ChiselStage.scala
index 0068d86f..e4ff77d0 100644
--- a/src/main/scala/chisel3/stage/ChiselStage.scala
+++ b/src/main/scala/chisel3/stage/ChiselStage.scala
@@ -28,11 +28,12 @@ class ChiselStage extends Stage with PreservesAll[Phase] {
Dependency[chisel3.stage.phases.Convert],
Dependency[chisel3.stage.phases.MaybeFirrtlStage] )
+ final lazy val phaseManager = new PhaseManager(targets) {
+ override val wrappers = Seq( (a: Phase) => DeletedWrapper(a) )
+ }
+
def run(annotations: AnnotationSeq): AnnotationSeq = try {
- new PhaseManager(targets) { override val wrappers = Seq( (a: Phase) => DeletedWrapper(a) ) }
- .transformOrder
- .map(firrtl.options.phases.DeletedWrapper(_))
- .foldLeft(annotations)( (a, f) => f.transform(a) )
+ phaseManager.transform(annotations)
} catch {
case ce: ChiselException =>
val stackTrace = if (!view[ChiselOptions](annotations).printFullStackTrace) {