- Sep 12, 2020
-
-
Jack Koenig authored
Instead of trying to JSON serialialize Unserializable annotations (which often causes an error, thus nothing is logged), instead use a .toString serialization so there is at least some usable information for debuggin.
-
- Sep 10, 2020
-
-
Jack Koenig authored
These options are generally specific to a stage and thus should not be propagating across serialization
-
Albert Chen authored
* test multiinfo comparison and mux cond inlining * loosen inlining conditions * fix typo * include dshlw * fix test
-
- Sep 07, 2020
-
-
Jack Koenig authored
Also rename --Wno-scala-version-warning to --warn:no-scala-version-deprecation and adopt naming convention where resulting annotation matches the CLI option
-
- Sep 06, 2020
-
-
Jack Koenig authored
-
- Sep 05, 2020
-
-
Jack Koenig authored
-
Albert Magyar authored
Legalize mem port clocks to avoid Verilator-unfriendly sensitivity lists
-
Albert Magyar authored
-
Albert Magyar authored
-
- Sep 02, 2020
-
-
Albert Chen authored
* InlineBooleanExpressions: test DontTouch * run scalafmt
-
- Sep 01, 2020
-
-
Jiuyang Liu authored
Make mill compatiable to 2.13.
-
Jiuyang liu authored
-
Albert Chen authored
-
- Aug 29, 2020
-
-
Albert Magyar authored
Restrict boolean inlining to avoid context-sensitive width bugs
-
Albert Magyar authored
-
Albert Magyar authored
* Restore depth-agnostic inlining for simple 'lhs = ref' bool assignments * Address review comments * Run scalafmt
-
Albert Magyar authored
Add custom transforms 'upstream' of emitter annotation in equiv tests
-
Albert Magyar authored
-
Kevin Laeufer authored
* FlattenSpec: flattening a module with no instaces should be a no-op * Fix problem when flattening/inlining a lone module Fix an edge case bug in InlineInstances where a circuit containing a lone module is flattened/inlined. This now properly special cases the situation of an empty indexMap which before had to be of length >= 1. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Simplify rename logic in InlineInstances Co-authored-by:
Jack Koenig <koenig@sifive.com> Co-authored-by:
Albert Magyar <albert.magyar@gmail.com> Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Mea culpa Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> Co-authored-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> Co-authored-by:
Jack Koenig <koenig@sifive.com> Co-authored-by:
Albert Magyar <albert.magyar@gmail.com>
-
Jiuyang Liu authored
Co-authored-by:mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Schuyler Eldridge authored
* CompilerAnnotation$ emits RunFirrtlTransform Change the CompilerAnnotation object to emit RunFirrtlTransformAnnotations containing the associated emitter. This requires a fix in the Driver compatibility layer to know how to enable one-file-per module emission if either a CompilerAnnotation or a RunFirrtlTransformAnnotation(_: Emitter) is present. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Add ConvertCompilerAnnotation phase Add a phase, ConvertCompilerAnnotation, that converts a CompilerAnnotation to a RunFirrtlTransformAnnotation. This provides a warning to the user if this path is taken. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Add test of ConvertCompilerAnnotation Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Deprecate CompilerAnnotation$, move helper methods Deprecate the CompilerAnnotation companion object and move it's private utility inside the RunFirrtlTransformAnnotation companion object. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Make ConvertCompilerAnnotations private[firrtl] Make this phase private to avoid adding a deprecation warning. Also, remove an unused string value. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Fix incorrect string in test Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Add test that '-X verilog', no emitter yields file Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com>
-
- Aug 27, 2020
-
-
Kevin Laeufer authored
If there is more than one clock, this will be detected and the user will be promted to run the StutteringClock transform.
-
Kevin Laeufer authored
* run scalafmtAll * ci: scalafmtCheckAll to check all code instead of just the main sources
-
Jack Koenig authored
-
- Aug 26, 2020
-
-
Albert Chen authored
The following conditions must be satisfied to inline: 1. has type Utils.BoolType 2. is bound to a DefNode with name starting with '_' 3. is bound to a DefNode with a source locator that points at the same file and line number. If it is a MultiInfo source locator, the set of file and line number pairs must be the same. Source locators may point to different column numbers. 4. InlineBooleanExpressionsMax has not been exceeded 5. is not a Mux Also updates the Verilog emitter to break up lines greater than 120 characters
-
- Aug 25, 2020
-
-
Jack Koenig authored
Co-authored-by:mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
- Aug 22, 2020
-
-
David Biancolin authored
* Elide emission of literals for async reset in sensitivity lists * Deprecate LegalizeClocksTransform Co-authored-by:mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Jack Koenig authored
-
Jack Koenig authored
* Fix bug in Uniquify clobbering DefInstance types * Change ReplaceMemTransform to not run Uniquify nor fixups Use invalidation as mechanism for rerunning resolution passes
-
- Aug 16, 2020
-
-
Jack Koenig authored
Apply Scalafmt Rewriting
-
- Aug 15, 2020
-
-
Jack Koenig authored
-
chick authored
-
Jack Koenig authored
-
chick authored
- .scalafmt.conf formatting rules - .travs.yml adds test that files are formatted to pass CI - .plugins.sbt add plugin for scalafmt
-
Kevin Laeufer authored
This adds an experimental new SMTLib and Btor2 emitter that converts a firrtl module into a format suitable for open source model checkers. The format generally follows the behavior of yosys' write_smt2 and write_btor commands. To generate btor2 for the module in m.fir run > ./utils/bin/firrtl -i m.fir -E experimental-btor2 for SMT: > ./utils/bin/firrtl -i m.fir -E experimental-smt2 If you have a design with multiple clocks or an asynchronous reset, try out the new StutteringClockTransform. You can designate any input of type Clock to be your global simulation clock using the new GlobalClockAnnotation. If your toplevel module instantiates submodules, you need to inline them if you want the submodule logic to be included in the formal model.
-
Kevin Laeufer authored
* test: add LeanTransformSpec to replace the old SimpleTransformSpec SimpleTransformSpec isn't simple anymore! * AnnotationTests: remove deprecated Compiler code * LeanTransformSpec: implicitly add right EmitCircuitAnnotation * AsyncResetSpec: move to new lean spec * CheckCombLoopsSpec: remove deprecated Compiler code * ChirrtlMemSpec: remove deprecated compiler code * CompilerTest: remove use of deprecated Compiler API
-
- Aug 14, 2020
-
-
Jack Koenig authored
Also fix mill build to include new BuildInfo Leave Scala 2.13.2 alone, there are problems when bumping
-
- Aug 13, 2020
-
-
Jack Koenig authored
* Deprecate support for Scala 2.11 Printed as warning in transform, can be suppressed via CLI * Place version deprecation message in object Refactor CheckScalaVersion to place the deprecation message inside the companion object. This lets the object be reused in other places, like in tests. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> * Check Scala 2.11 deprecation messages in tests Fix FirrtlMainSpec to check that the Scala 2.11 deprecation message added by the CheckScalaVersion transform shows up on stdout, but only if tests are running under 2.11. Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> Co-authored-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Schuyler Eldridge authored
Signed-off-by:
Schuyler Eldridge <schuyler.eldridge@ibm.com> Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Jack Koenig authored
* Remove LegacyAnnotation and MoultingYaml It has been deprecated since 1.1 * Remove all uses of ConvertLegacyAnnotations Co-authored-by:mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-