diff --git a/tools/firtool/firtool.cpp b/tools/firtool/firtool.cpp index f7b9c62ba08b..614341e30dd9 100644 --- a/tools/firtool/firtool.cpp +++ b/tools/firtool/firtool.cpp @@ -525,14 +525,13 @@ static LogicalResult processBuffer( pm.nest().addPass(firrtl::createLowerIntrinsicsPass()); - // TODO: Move this to the O1 pipeline. - pm.nest().nest().addPass( - firrtl::createDropNamesPass(preserveMode)); - if (!disableOptimization) pm.nest().nest().addPass( createCSEPass()); + pm.nest().nest().addPass( + firrtl::createDropNamesPass(preserveMode)); + pm.nest().addPass(firrtl::createInjectDUTHierarchyPass()); pm.nest().nest().addPass( @@ -639,9 +638,6 @@ static LogicalResult processBuffer( pm.nest().addPass( firrtl::createBlackBoxReaderPass(blackBoxRoot)); - pm.nest().nest().addPass( - firrtl::createDropNamesPass(preserveMode)); - // Run SymbolDCE as late as possible, but before InnerSymbolDCE. This is for // hierpathop's and just for general cleanup. pm.addNestedPass(mlir::createSymbolDCEPass());