Decouple {circt, chisel3}.stage.ChiselStage (#3014)
Remove the dependency of circt.stage.ChiselStage on
chisel3.stage.ChiselStage. Remove the internal call to ChiselStage and
instead directly construct a PhaseManager that uses the target phases of
ChiselStage directly.
Add a new argument type to the existing "--target" option of
circt.stage.ChiselStage, "chirrtl", to indicate that specification
FIRRTL (in the specification textual format and not MLIR) should be
produced.
Use this new option to migrate two methods of ChiselStage$, emitCHIRRTL
and convert, away from using a call to chisel3.stage.ChiselStage.
Add tests of the new option, emitCHIRRTL, and convert.
Simplify an existing test that erroneously fails with the new elaborate.
Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@sifive.com>
parent
4601d0e3
Please register or sign in to comment