1. Apr 18, 2018
  2. Apr 11, 2018
  3. Apr 10, 2018
  4. Mar 24, 2018
    • Richard Lin's avatar
      Fallback null insertion for autoclonetype (#801) · a86e3888
      Richard Lin authored
      If autoclonetype is unable to determine an outer class, this attempts to insert a null (and give a deprecation warning), preserving old behavior (in some cases) where the new behavior doesn't work.
      
      This doesn't provide full compatibility with old autoclonetype: this does not attempt null insertion in the general first argument (if it's not an outer class reference). Reasoning is that inserting a null for an explicit argument is probably not the right thing to do, and will likely cause a difficult-to-debug NullPointerException (whereas that would be unlikely for an outer class, which is not always referenced in Bundle subclass code).
      a86e3888
  5. Mar 10, 2018
  6. Mar 07, 2018
    • Andrew Waterman's avatar
      Fix SyncReadMem.read; add test (#796) · a4aa3929
      Andrew Waterman authored
      SyncReadMem.read with an enable signal currently only works in
      compatibility mode, where Wires are implicitly initialized to
      DontCare.  Fix by explicitly assigning DontCare to the Wire.
      
      This might fix #775.
      a4aa3929
  7. Mar 05, 2018
  8. Mar 04, 2018
  9. Mar 03, 2018
    • Richard Lin's avatar
      Fix for 792 (#793) · 531dd6cb
      Richard Lin authored
      Makes Builder.updateBundleStack a bit stricter in deciding how many stack frames to discard by additionally matching against method names and deleting stack frames at or above the frame currently being inserted.
      531dd6cb
    • Jim Lawson's avatar
      Bump RELEASE-SNAPSHOT versions. · 652fc4c7
      Jim Lawson authored
      652fc4c7
  10. Mar 01, 2018
    • Jack Koenig's avatar
      Refactor Annotations (#767) · 46553432
      Jack Koenig authored
      * Generalize ChiselAnnotation
      
      This allows us to delay creation of Annotations till elaboration is
      complete. Also update all annotation-related code.
      
      * Add RunFirrtlTransform
      
      Use a Chisel-specific RunFirrtlTransform API to preserve behavior of old
      ChiselAnnotation (now called ChiselLegacyAnnotation)
      
      * Use unique test directories in ChiselRunners.compile
      46553432
    • Richard Lin's avatar
      97871178
  11. Feb 24, 2018
  12. Feb 23, 2018
  13. Feb 22, 2018
  14. Feb 21, 2018
  15. Feb 13, 2018
  16. Feb 09, 2018
    • Richard Lin's avatar
      Make uncloneable IO deprecated instead of error, improve error handling (#771) · a57e4b1e
      Richard Lin authored
      It appears #754 breaks more code than I thought, so this makes it a soft error (with a runtime deprecation warning - to get people to fix their stuff before we break it for real) for now.
      
      This additionally changes the autoclonetype errors to be more deterministic (reporting class names instead of object names) in the most common cases, to allow the deprecations manager to deduplicate warnings.
      a57e4b1e
  17. Feb 08, 2018
    • Richard Lin's avatar
      Cloning IO with compatibility 🦆 (#754) · 254597c1
      Richard Lin authored
      Changes the API such that IO(...) clones. All Bundles will need to be clone-able, but auto clone type is expected to handle most cases.
      254597c1
    • Richard Lin's avatar
      Better support for autoclonetype of nested Bundles (#769) · 7be9b1c6
      Richard Lin authored
      * Better support for autoclonetype of nested Bundles
      
      * Move bundleStack to dynamicContext
      
      * prefer $outer if available, make guesses distinct
      
      * Catch IllegalAccessException in autoclonetype
      In strange circumstances this type of exception can occur when accessing $outer
      7be9b1c6
  18. Feb 07, 2018
  19. Feb 06, 2018
  20. Feb 03, 2018
  21. Jan 25, 2018
    • Richard Xia's avatar
      Remove unused BuildInfo.BuildTime. (#766) · 639617ea
      Richard Xia authored
      BuildInfo.BuildTime appears to cause sbt to always recompile BuildInfo to get
      the latest time, which causes a recompile on any package that depends on
      chisel3. This is quite painful for doing development on any Chisel projects.
      BuildTime doesn't actually appear to be in use, and removing it fixes the
      unnecessary recompilation issue.
      639617ea
  22. Jan 24, 2018
    • Richard Lin's avatar
      Runtime API deprecation warnings (#761) · 224740ac
      Richard Lin authored
      Add runtime warnings for use of deprecated Chisel methods. This is done using a macro that takes the message from a `@deprecated` annotation, and adds a call to `Builder.deprecated`.
      
      Reasoning is that by default, Scala doesn't print all deprecations, and that it's somewhat tricky to notice them - yet some support questions revolve around the use of deprecated and terribad API. This now prints warnings for uses of deprecated functions at runtime, and aggregates them by error and line to avoid spam. Also included is convenient information on enabling scalac deprecations.
      
      This also changes how line numbers for Chisel's error facility is determined, using prefix string comparison of the stack trace element classnames, instead of checking if the class is a subtype of UserModule. The previous one (specifically, calls to Class.forName) seems to interact badly with reflection-based cloneType when called at scale. This should also give more accurate reporting of errors that are in user code but outside of a UserModule.
      
      It turns out that `@deprecated` on macro functions don't do anything, so this changes the tags to the functions that the macros point to, which seems to work properly. It also turns out that there's a bunch of uses of deprecated functions in chiselTests which needs to be fixed.
      
      Not all `@deprecated` functions are also annotated with `@chiselRuntimeDeprecation`, because they're still used in Chisel internals, and we can't track whether they're called by the user or by Chisel and it will give a misleading error. These are a small amount of functions.
      224740ac
  23. Jan 20, 2018
  24. Jan 19, 2018
  25. Jan 17, 2018
  26. Jan 03, 2018