diff options
| author | Schuyler Eldridge | 2021-06-14 14:25:45 -0400 |
|---|---|---|
| committer | GitHub | 2021-06-14 11:25:45 -0700 |
| commit | 3ea95e720c8107a1c466b8cba1fc076bfbc296fa (patch) | |
| tree | bb497783b025ecc5cca7e35981c3cdf18a6891a6 /src/main/scala/firrtl/backends | |
| parent | 04a8f2acffcd67c764575357144f29334ba8d44d (diff) | |
Add -X mhigh compiler for minimal high form (#2268)
Add a compiler/emitter that can target minimal high form. This will
produce output that only has CHIRRTL constructs removed.
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
Diffstat (limited to 'src/main/scala/firrtl/backends')
| -rw-r--r-- | src/main/scala/firrtl/backends/firrtl/FirrtlEmitter.scala | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/backends/firrtl/FirrtlEmitter.scala b/src/main/scala/firrtl/backends/firrtl/FirrtlEmitter.scala index 80aea996..bb385ffd 100644 --- a/src/main/scala/firrtl/backends/firrtl/FirrtlEmitter.scala +++ b/src/main/scala/firrtl/backends/firrtl/FirrtlEmitter.scala @@ -61,6 +61,13 @@ sealed abstract class FirrtlEmitter(form: CircuitForm) extends Transform with Em } class ChirrtlEmitter extends FirrtlEmitter(CircuitForm.ChirrtlForm) +class MinimumHighFirrtlEmitter extends FirrtlEmitter(CircuitForm.HighForm) { + override def prerequisites = stage.Forms.MinimalHighForm + override def optionalPrerequisites = Seq.empty + override def optionalPrerequisiteOf = Seq.empty + override def invalidates(a: Transform) = false + override val outputSuffix = ".mhi.fir" +} class HighFirrtlEmitter extends FirrtlEmitter(CircuitForm.HighForm) class MiddleFirrtlEmitter extends FirrtlEmitter(CircuitForm.MidForm) class LowFirrtlEmitter extends FirrtlEmitter(CircuitForm.LowForm) |
