1. Mar 30, 2021
  2. Mar 27, 2021
  3. Mar 26, 2021
  4. Mar 23, 2021
  5. Mar 20, 2021
    • Jack Koenig's avatar
      Legalize neg: -x becomes 0 - x (#2128) · 49b82324
      Jack Koenig authored
      This fixes an error with negating a negative SInt literal and a
      [debatable] lint warning in Verilator when negating any value.
      
      This behavior matches that of Chisel (which directly emits the 0 - x
      already).
      49b82324
  6. Mar 19, 2021
  7. Mar 17, 2021
    • Jack Koenig's avatar
      Fix issue where inlined cvt could cause crash (#2124) · 94d1bee4
      Jack Koenig authored
      Due to inlining of Boolean expressions, the following circuit is handled
      directly by the VerilogEmitter:
      
      input a: UInt<4>
      input b: SInt<1>
      output o: UInt<5>
      o <= dshl(a, asUInt(cvt(b)))
      
      Priot to this change, this could crash due to mishandling of cvt in the
      logic to inject parentheses based on Verilog precedence rules.
      
      This is a corner case, but similar bugs would drop up if we open up the
      VerilogEmitter to more expression inlining.
      94d1bee4
  8. Mar 14, 2021
  9. Mar 11, 2021
  10. Mar 10, 2021
  11. Mar 09, 2021
  12. Mar 05, 2021
  13. Mar 04, 2021
  14. Mar 03, 2021
    • Jack Koenig's avatar
      Remove Scala 2.11 (#2062) · 38dc5401
      Jack Koenig authored
      38dc5401
    • Jack Koenig's avatar
      Fix CI Checks (#2097) · 541a70c9
      Jack Koenig authored
      Bumping Scala minor version but not bumping CI guards on the version
      causes tests to no longer run. Change to using startsWith(...) so that
      minor version bumps won't cause issues in the future.
      
      Also run ScalaFmt
      541a70c9
  15. Feb 26, 2021
  16. Feb 18, 2021
    • Kevin Laeufer's avatar
    • Kevin Laeufer's avatar
      Allow Side Effecting Statement to have Names (#2057) · 5a89fca6
      Kevin Laeufer authored
      * firrtl: add optional statement labels for stop, printf, assert, assume and cover
      
      * test: parsing of statement labels
      
      * ir: ensure that name is properly retained
      
      * SymbolTable: add support for labled statements
      
      * test: parsing statement labels
      
      * test: lower types name collisions with named statements
      
      * ignore empty names
      
      * Inline: deal with named and unnamed statements
      
      * RemoveWires: treat stop, printf and verification statements as "others"
      
      * test: fix InlineInstance tests
      
      * DeadCodeEliminations: statements are now als declarations
      
      * CheckHighForm: ensure that statement names are not used as references
      
      * CheckSpec: throw error if statement name collides
      
      * add pass to automatically add missing statement names
      
      * check: make sure that two statements cannot have the same name
      
      * stmtLabel -> stmtName
      
      * scalafmt
      
      * add statement names to spec
      
      * spec: meta data -> metadata
      
      * EnsureStatementNames: explain naming algorithm
      
      * remove returns
      
      * better namespace use
      
      * ir: add CanBeReferenced trait
      
      * ir: add newline as jack requested
      5a89fca6
  17. Feb 17, 2021
  18. Feb 06, 2021
  19. Feb 04, 2021
  20. Feb 02, 2021
  21. Jan 29, 2021
  22. Jan 27, 2021
    • Jack Koenig's avatar
      Fix post-merge publishing (#2055) · aec9e9e6
      Jack Koenig authored
      * Check Unidoc on all versions of Scala
      
        It is required for publishing and we publish every version
      
      * Fix conflicting cross-version suffixes issue
      
        When running `sbt ++2.13.4 unidoc`, SBT would set the Scala version
        for the fuzzer and benchmark projects even though they aren't really
        relevant to the command. This may be a misconfiguration or a bug in
        the unidoc plugin. Whatever the case, simply making it possible for
        them to use the same version of Scala as the firrtl project (on which
        they depend) fixes the issue.
      
      * Match versions of Scala in build.sbt and CI
      
      * Fix unidoc issues in 2.13.4
      
        There is some bug in ScalaDoc not finding some links in firrtl.options
        so those links were made absolute as a workaround.
      aec9e9e6
  23. Jan 23, 2021
  24. Jan 20, 2021