diff options
| author | azidar | 2015-05-29 11:34:51 -0700 |
|---|---|---|
| committer | azidar | 2015-05-29 11:34:51 -0700 |
| commit | ca49cb05f9e2fbeac1d0c722eb7d342f74508b7e (patch) | |
| tree | f8fb73ac66b7d5a50c1ab56ec2b2c8b91f71dd0b /src/main/stanza/custom-compiler.stanza | |
| parent | b44b49e6a6589add30b5b1d89d85f2e20432a515 (diff) | |
Added custom pass. Does not correctly run, stanza just spins. Requires debugging.
Diffstat (limited to 'src/main/stanza/custom-compiler.stanza')
| -rw-r--r-- | src/main/stanza/custom-compiler.stanza | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/main/stanza/custom-compiler.stanza b/src/main/stanza/custom-compiler.stanza new file mode 100644 index 00000000..1ca29bdd --- /dev/null +++ b/src/main/stanza/custom-compiler.stanza @@ -0,0 +1,38 @@ +defpackage firrtl/custom-compiler : + import core + import verse + import firrtl/ir-utils + import firrtl/ir2 + import firrtl/passes + import firrtl/errors + import firrtl/verilog + import firrtl/custom-passes + +public defstruct InstrumentedVerilog <: Compiler : + file: String with: (as-method => true) + args: List<String> +public defmethod passes (c:InstrumentedVerilog) -> List<Pass> : + to-list $ [ + WhenCoverage(args(c)[0],args(c)[1]) + CheckHighForm(expand-delin) + TempElimination() + ToWorkingIR() + MakeExplicitReset() + ResolveKinds() + CheckKinds() + InferTypes() + CheckTypes() + ResolveGenders() + CheckGenders() + ExpandAccessors() + LowerToGround() + ExpandIndexedConnects() + ExpandWhens() + InferWidths() + SplitExp() + ToRealIR() + SpecialRename(`#,`_) + Verilog(file(c)) + ] + + |
