Skip to content

SiFive Internal Release 1.23.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@uenoku uenoku released this 20 Nov 08:57
· 4225 commits to main since this release

Overview

  • IMDCE to eliminate dead memories
  • Grand Central wire2node change
  • Namehint propagation improvement
  • A flag to workaround vivado BRAM inference bug
  • Refactor FIRRTL canonicalizers to use ODS patterns

What's Changed

  • [IMDCE] Allow dead memories to be eliminated by @nandor in #4244
  • Add options for controlling emission of randomization code. by @dtzSiFive in #4240
  • [FIRRTL] Cleanup GCT Views Tests to RefType, NFC by @seldridge in #4247
  • [docs][Seq] Fixup seq.firreg documentation to reflect current op. by @dtzSiFive in #4250
  • [FIRRTL][LowerXMR] Copy DenseMap to temporary before insertion by @prithayan in #4243
  • [Docs] Fix typo in pass description by @tymcauley in #4248
  • [FIRRTL][MemOp] Removed unused ports from memories by @nandor in #4242
  • [SSP] Extract helper to access linked operator type, NFC. by @jopperm in #4258
  • [FIRRTL][LowerXMR] Use InstanceGraph to get referencedModule by @prithayan in #4254
  • [NFC] verilog-basic.mlir: Fix duplicate definition of symbol in test case. by @dtzSiFive in #4268
  • Fix bug in memory canonicalizer when all ports are unused. Make patterns named to make debugging easier. by @darthscsi in #4265
  • [DropNames] Reuse a droppable name attribute, nfc by @uenoku in #4259
  • [LowerToHW] Fix the operand order of VectorCreateOp lowering by @uenoku in #4260
  • [ExportVerilog] Fix port spacing on instances, measure emitted name. by @dtzSiFive in #4264
  • Remove invalids from canonicalizers. They are always wrong. by @darthscsi in #4271
  • [FIRRTL] Convert Wires To Nodes when dominance allows by @darthscsi in #4253
  • [FIRRTL] Remove Annotation-style GCT Views by @seldridge in #4251
  • [LowerSeqToSV] Self-assign of Async Reset FIR Reg by @seldridge in #4273
  • [SV][Prepare] Improve a namehint propagation and spilling logic by @uenoku in #4261
  • [Docs] Fix typo in FIRRTL Types description by @tymcauley in #4276
  • Bump LLVM by @youngar in #4262
  • [FIRRTL] Fix RegResetWithOneReset Canonicalizer by @seldridge in #4279
  • [Handshake] Canonicalize away simple mux+cbranch structures by @RamirezLucas in #4272
  • [FIRRTL] Guarantee NodeOp in GCT View by @seldridge in #4278
  • [Handshake] Fix ValueRange lifetime issue. by @dtzSiFive in #4283
  • [FIRRTL][Dedup] Fix cloning annotations for more context by @youngar in #4285
  • Make flatten memory pass default. Create lower-memory flag. by @carlosedp in #4275
  • [LowerToHW] Support 1d vector aggregate constant by @uenoku in #4280
  • [Python] Register handshake passes by @teqdruid in #4290
  • [RTL-SIM] Fix trace debug output in Verilator driver by @teqdruid in #4293
  • [ESI] Move ESI collateral into build include directory by @teqdruid in #4292
  • [SSP] Allow standalone use of OperatorLibraryOp. by @jopperm in #4222
  • [ESI] Support BSPs in service metadata emission by @teqdruid in #4299
  • [tools] Change tools to use CIRCT-specific bug msg by @seldridge in #4302
  • [HW][Seq] Added traits to identify clocked and resettable elements by @nandor in #4294
  • [FIRRTL] Add WiringProblem Solver to LowerAnnotations, use for GrandCentral Views by @seldridge in #4286
  • Bump LLVM by @prithayan in #4297
  • [FIRRTL] Remove Grand Central Parent Annotation by @seldridge in #4305
  • [SV] Update SVExtractTestCode to handle already bound instances. by @mikeurbach in #4291
  • [Seq] Use a new pass generation mechanism by @uenoku in #4304
  • [SSP] Define ChainingProblem's properties. by @jopperm in #4220
  • [FIRRTL] Move DShift to patterns by @darthscsi in #4308
  • [CI] Swap static and shared library by @uenoku in #4310
  • [FIRRTL] Preserve names on expressions when applying canonicalization patterns by @darthscsi in #4307
  • [NFC] Move connect canonicalization to patterns by @darthscsi in #4306
  • [FIRRTL] Eliminate more invalid canonicalization by @darthscsi in #4314
  • [LowerToHW] Lower i0 operand in printf-encoded assertions to i1 by @uenoku in #4311
  • [docs][NFC] Fix dead chisel-lang API links "temporarily". by @dtzSiFive in #4313
  • [FIRRTL] Move more canonicalizations to patterns. by @darthscsi in #4316
  • [FIRRTL] Change Wires to Nodes in WiringProblems by @seldridge in #4312
  • Revert "[FIRRTL] Convert Wires To Nodes when dominance allows (#4253)" by @uenoku in #4317
  • [LowerAnnotations][WiringProblem] minor reorg, debug print all problems. by @dtzSiFive in #4322
  • [GrandCentralTaps] Move (new) MemTaps to WiringProblem. by @dtzSiFive in #4320
  • [Docs] Add SSP to dialect diagram. by @jopperm in #4295
  • [SV] Verify that sv.interface.instance ops have a nonempty name by @rwy7 in #4315
  • [HWMemSim, LowerSeqToSV] Add a flag to annotate array registers with (*ram_style = "distributed" *) by @uenoku in #4288
  • [FIRRTL] Require MultibitMuxOp Index is Unsigned by @seldridge in #4325
  • [FIRRTL][CheckCombCycles] Detect input port self loops by @prithayan in #4330
  • [Handshake][lit] Move buff insertion tests to correct dir by @Dinistro in #4329
  • llvm-bump by @Ramlakshmi3733 in #4321

New Contributors

Full Changelog: sifive/1/22/0...sifive/1/23/0