Releases: llvm/circt
Releases · llvm/circt
Firtool 1.57.1 Release
What's Changed
- Fix performance regression in verifiers by @darthscsi in #6293
Full Changelog: firtool-1.57.0...firtool-1.57.1
Firtool 1.57.0 Release
What's Changed
- [FIRRTL][HoistPassthrough] Add pass to hoist must-driven output ports. by @dtzSiFive in #6115
- Remove GlobalRefOp, GlobalRefAttr by @seldridge in #6173
- [FIRRTL][DropConst] Mark InstanceGraph preserved. by @dtzSiFive in #6183
- [firtool] Add LowerGroups pass by @seldridge in #6182
- [FIRRTL][Hoist] Mark all analyses preserved if no changes. by @dtzSiFive in #6185
- [firtool] Deprecate -dedup option by @seldridge in #6188
- [Ibis] Allow tunneling from
hw.module
s by @mortbopet in #6195 - [Pipeline] Remove internal clock, reset,stall signals. by @mortbopet in #6196
- [Ibis] Print offending port name and use count on containers-to-hw error by @blakep-msft in #6186
- [FIRRTL][LOA] If no changes made, mark all analyses preserved. by @dtzSiFive in #6187
- [Ibis] Fix clean selfdrivers in case of external reads by @mortbopet in #6201
- [ExportVerilog] Format specifiers: hierpath separation character by @teqdruid in #6192
- [FIRRTL] Add GroupSink pass by @seldridge in #6184
- [FIRRTL] Cause "weak" OMIR Annotations to not block optimizations by @seldridge in #6200
- [Ibis] Fix issues in Tunneling and PortRef lowering by @mortbopet in #6202
- [Python] Use Ninja and LLD when building wheel if available by @uenoku in #6165
- [FIRRTL][RefSubOp] Add getAccessedField helper method. by @dtzSiFive in #6208
- [OM][Bindings] Make Python Evaluator Object hashable by @prithayan in #6204
- [ExportVerilog] Fix line count in debug verilog locations by @prithayan in #6210
- [FIRRTL] Simplify getFieldRefFromValue, add+use FieldRefCache. by @dtzSiFive in #6181
- Bump LLVM by @rwy7 in #6207
- llvm: Small bump to get version that passes tests. by @dtzSiFive in #6211
- [Seq][FirMemLowering] Create correct width constant for missing mask input by @prithayan in #6214
- [Ibis] Add ibistool by @mortbopet in #6206
- [Ibis] Reblock should also create blocks around non-delimited ops by @mortbopet in #6218
- [Ibis] Add
ibis-prepare-scheduling
pass by @mortbopet in #6166 - [FIRRTL][LOA][NFCI] Use FieldRefCache. by @dtzSiFive in #6215
- [FIRRTL] Bump FIRRTL version to 3.3.0 for parsing by @seldridge in #6217
- [Arc] Move LegalizeStateUpdate before StateAlloc by @zyedidia in #5830
- [HW] Change printer for modules by @darthscsi in #6205
- [MSFT] Remove Python extensions for non-existant structure ops. by @mikeurbach in #6221
- [ibis] Fix reblock use of erased ops by @seldridge in #6222
- [FIRRTL][Parser] Update groups version check to 3.2.0. by @dtzSiFive in #6219
- [Calyx] Add calyx.undef by @rachitnigam in #5964
- [HW] Disallow duplicate field names in HW aggregate types by @fzi-hielscher in #6225
- [Firtool][CAPI] Add C-API for Firtool lib by @SpriteOvO in #6036
- [Ibis] Add ibis.sblock.isolated by @mortbopet in #6230
- [OM] Implement PathAttr CAPI and Python binding by @uenoku in #6229
- [Ibis] Add handshake to DC conversion by @mortbopet in #6231
- [FIRRTL] Preserve port orders when lowering to HW. by @darthscsi in #6224
- [FIRRTL] Input probe support. by @dtzSiFive in #6121
- [ExportVerilog] Bound type size considered for decl alignment by @fabianschuiki in #6171
- [FirRegLowering] Implement refined check for mux-to-if conversion. by @mikeurbach in #6203
- [ESI] Lower bundles to channels by @teqdruid in #6216
- [Ibis] Add methods-to-containers pass by @mortbopet in #6232
- [Firtool] Rerun IMCP after register optimizations by @uenoku in #6179
- [FIRRTL][ExpandWhens] Support flow checking for local and remote objects by @rwy7 in #6212
- [Ibis] Added missing ibistool to integration test by @dobios in #6241
- [OM] Load post-export dialects in om-linker. by @mikeurbach in #6242
- [FIRRTL] Update LowerClasses to use the defname for ExtModules. by @mikeurbach in #6243
- [Arc] Add LowerArcsToFuncs pass by @zyedidia in #6227
- [ESI][Python] Expose BundleType to Python by @teqdruid in #6248
- [FIRRTL] Add canonicalizations for mux comparing its high and low operands by @trilorez in #6246
- [FIRRTLFolds] Remove InvalidValue canonicalization by @uenoku in #6080
- [Ibis] Add scheduling prototype by @mortbopet in #6239
- [Arc] Lower models into eval functions by @fabianschuiki in #6247
- [OM] Update FreezePaths to root paths at the nearest public module. by @mikeurbach in #6244
- [Debug] Add basic DebugInfo analysis and emission by @fabianschuiki in #6148
- [PyCDE] Fixing tests by @teqdruid in #6252
- [OM] Add more path types by @youngar in #6250
- [OM] Evaluator: Support graph regions by @uenoku in #6249
- [SV] Mark sv.xmr.ref op as pure by @fabianschuiki in #6260
- [FIRRTL][FIRParser] Prefer RWProbe op as much as possible. by @dtzSiFive in #5835
- [FIRRTL][MergeConnections] Reject non-passive aggregates. by @dtzSiFive in #6264
- [FIRRTL][NFC] Move FieldRef -> InnerSymTarget to utility. by @dtzSiFive in #6265
- [Seq] Add optional power-on value to
compreg
ops by @mortbopet in #6255 - [Seq][NFC] More flexible builders for compregs by @nandor in #6270
- [firtool] Add infra for pass plugins by @uenoku in #6254
- [Seq] Remove custom printer/parser for
seq.compreg(.ce)
ops by @mortbopet in #6267 - [PipelineToHW] Add optional power-on values to control registers by @mortbopet in #6269
- [Seq] Fix the canonicalization of seq registers with a clock type by @nandor in #6274
- [OM] Add location info to EvaluatorValue by @prithayan in #6240
- [FIRRTL][GrandCentral] Add a mode to drop companion modules by @nandor in #6268
- [circt-opt] Export symbols for MLIR plugins by @uenoku in #6278
- [CI] Install LLVM utils to release artifacts by @uenoku in #6279
- [OM] Overhaul of path operations by @youngar in #6253
- [Namespace] Return an empty string for empty string. by @uenoku in #6284
- [NFC] LLVM Bump by @trilorez in #6280
- [FIRRTL] Add strip option to DropName by @uenoku in #6281
- [LowerToHW] Fix symbol creation for empty names by @uenoku in #6282
- [ExtractTestCode] Specify non-empty unqiue port names by @prithayan in #6283
- Add emission for calyx std_signext by @rachitnigam in #6285
- [FIRRTL] Remove RecursiveMemoryEffects and RecursivelySpeculatable from When op, add canonicalizers by @uenoku in #6236
- [HW] round trip ModuleType non-ssa values by @darthscsi in #6287
New Contributors
Full Changelog: firtool-1.56.1...firtool-1.57.0
Firtool 1.56.1 Release
What's Changed
- [MSFT] Finally move away from GlobalRefOp by @teqdruid in #6168
- [FIRRTL] Add Double property type. by @dtzSiFive in #6167
- [MSFT] Rip out MSFTModule et. al. by @teqdruid in #6161
- [HW] Allow for quoted struct field names by @fabianschuiki in #6174
- [MSFT] Remove DiscoverAppIDs pass by @teqdruid in #6175
- [Python] Remove CI options that only applied to MacOS universal. by @mikeurbach in #6169
- [NFC][ESI][MSFT] Move AppIDs over to ESI by @teqdruid in #6177
- [Ibis] Add Ibis CF to Handshake conversion by @mortbopet in #6164
- [Python] Downgrade setuptools_scm, drop python 3.7 as EOL by @uenoku in #6180
Full Changelog: firtool-1.56.0...firtool-1.56.1
Firtool 1.56.0 Release
What's Changed
- [Pipeline] Add non-stallable pipeline stages by @mortbopet in #6018
- [OM] Handle AnyType casts in Evaluator. by @mikeurbach in #6106
- [OM][firtool] Add FreezePaths pass by @youngar in #6069
- [CI] Use macOS universal wheels for M-series, add Python 3.9 and 3.11 support by @leonardt in #5822
- Add OMInstanceTarget path kind by @youngar in #6123
- [Arc] Introduce vectorize operation by @maerhart in #6120
- [Pipeline] Fix issue in ExplicitRegs by @mortbopet in #6118
- [Ibis] Add ibis reblock pass by @mortbopet in #6089
- [HW] Support parametric UnpackedArrayType in hw-specialize by @mortbopet in #6119
- [Ibis] Rename
ibis.block
->ibis.sblock
by @mortbopet in #6125 - [FIRRTL][IMCP] Fix handling of refsub, send/resolve, fields. by @dtzSiFive in #6100
- [FIRRTL][Parser] Wires of non-agg non-hw should have droppable names. by @dtzSiFive in #6102
- [FIRRTL][Inliner] Use wires for all. by @dtzSiFive in #6127
- [FIRRTL][LowerClasses] Handle InstanceTarget. by @dtzSiFive in #6126
- [PyCDE] Move off of msft.module to hw.module by @teqdruid in #6122
- [OM] Add path append op by @prithayan in #6073
- [HW] Unify port location arrays and port attribute arrays by @darthscsi in #6116
- [FIRRTL][Dedup] An extmodule without defname is unique. by @dtzSiFive in #6129
- [FIRRTL][Dedup] Skip modules with syms we can't drop, classes. by @dtzSiFive in #6133
- [Arc] Include pass base only where needed by @maerhart in #6140
- [Arc] Improve performance of state update legalization by @fabianschuiki in #6137
- [Arc] Add LowerVectorizations pass by @maerhart in #6141
- [Arc] Allow top-level logic in LowerState; detect clock edges by @fabianschuiki in #6142
- [Handshake] Allow handshake ops to be used outside of a
handshake.func
by @mortbopet in #6132 - [Seq] Convert
seq.clock_gate
to use the clock type exclusively by @nandor in #6134 - [Seq] Switch all seq ops to use seq.clock by @nandor in #6139
- [Seq] Lower clock types nested within aggregates by @nandor in #6138
- [FIRRTL][FIRParser] Add AnyRef cast as-needed for agg prop expr's. by @dtzSiFive in #6135
- [scf-to-calyx]Support for function call by @linuxlonelyeagle in #5965
- [Firtool] Move the remaining pass additions into lib by @SpriteOvO in #6094
- [Ibis] Add
ibis.sblock
inlining operations and passes by @mortbopet in #6145 - [HW][Python] Add name getters for ModuleType by @uenoku in #6149
- [OM] Python bindings for om integer by @prithayan in #6042
- [Ibis] Allow multiple return values for
ibis.method
by @mortbopet in #6151 - [NFC][Handshake] Adjust handshake interface defs and file locs by @mortbopet in #6150
- [ExportVerilog] Support CallSiteLoc and NameLoc emission by @mortbopet in #6131
- [ExportVerilog] Add verilog debug locations to output MLIR by @prithayan in #6092
- [FIRRTL][IMDCE] Mark all objects as alive by @rwy7 in #6157
- [ExportVerilog] Remove useless assert from NameCollector by @fabianschuiki in #6147
- [CI] Hotfix macosx python wheel by @leonardt in #6158
- [MSFT] Make AppID discovery an index rather than a pass by @teqdruid in #6152
- [PyCDE] Switch over to new AppIDIndex by @teqdruid in #6160
- [HW] Align instance_like_impl verification with
getReferencedModule
by @mortbopet in #6155 - [NFC][ExportVerilog] Move location emission functions to class by @mortbopet in #6154
- [CFToHandshake] Refactor towards genericness by @mortbopet in #6156
- [Ibis] Add
ibis.method.df
operation by @mortbopet in #6163 - [HW] Fix ModuleType::getInputType to return InOutType for InOut port by @uenoku in #6162
New Contributors
Full Changelog: firtool-1.55.0...firtool-1.56.0
Firtool Release 1.55.0
What's Changed
- [FIRRTL] Update LowerClasses to handle extmodule and instances. by @mikeurbach in #6063
- [FIRRTL] Improve IMCP for non-hw; support mat'izing refs of constants. by @dtzSiFive in #6091
- [FIRRTL][IMDCE] Don't try to remove main module, don't warn if empty. by @dtzSiFive in #6065
- [SFCCompat] Regard aggregate constant as constants by @uenoku in #6083
- [Ibis] Introduce
ibis.block
instead ofibis.schedule
by @mortbopet in #6082 - [Ibis] Add
--ibis-argify-blocks
pass by @mortbopet in #6084 - [FIRRTL][IMCP] Names of wires of probes can be deleted. by @dtzSiFive in #6097
- [FIRRTL][IMCP] Propagate through nodes with annotations, but keep. by @dtzSiFive in #6098
- [FIRRTL][LOA] Created Non-HW wires should always have droppable names. by @dtzSiFive in #6101
- [FIRRTL][IMDCE] Wires for all (probes). by @dtzSiFive in #6056
- [OM] Add AnyType and AnyType cast. by @mikeurbach in #6105
- [FIRRTL] Add AnyRef type, parser, emitter, and printed form. by @mikeurbach in #6104
- [HW] Convert type storage for modules over to moduletype by @darthscsi in #6071
- [MSFT] Remove the partition pass by @teqdruid in #6110
- [ESI] Channel bundle type and pack/unpack ops by @teqdruid in #6066
- [Pipeline] Remove outlined lowering by @mortbopet in #6111
- [OM] Evaluator: Support Map by @uenoku in #6045
- [FIRRTLFolds] Make sure single connection is in the same block by @uenoku in #6085
- Remove arg and res names from module representation by @darthscsi in #6095
- [FIRRTL] Optionally look through casts for fieldref chasing. by @dtzSiFive in #6093
- Bump LLVM: 2023/09/12 by @azidar in #6114
- [FIRRTLFolds] Ignore reset signals for constant registers in foldHidd… by @uenoku in #6113
- [FIRRTL] Add AnyRef cast operation, and insert during parsing. by @mikeurbach in #6108
- [FIRRTL] Update LowerClasses to handle AnyRef and AnyRef cast. by @mikeurbach in #6117
- [SV] Add optional
init
operand tosv.reg
by @mortbopet in #6002
Full Changelog: firtool-1.54.0...firtool-1.55.0
firtool-1.54.0
What's Changed
- [NFC] rename function and move interface to a file by @darthscsi in #6021
- [FIRRTL][IMCP] Test and don't error on object/object.subfield. by @dtzSiFive in #6022
- [FIRRTL] Bump latest to 3.2.0 for use in emitter / round-trip. by @dtzSiFive in #6026
- [FIRRTL] Adjust bool version guard to accurate 3.2.0. by @dtzSiFive in #6027
- [FIRRTL] Add Path + List ops to visitor/emitter by @dtzSiFive in #5959
- [ESI][Cosim] Reducing MMIO data widths to 32 bit by @teqdruid in #6017
- [ESI] Start of new software runtime by @teqdruid in #5999
- [HW] Fold extracts of constant structs by @fzi-hielscher in #6010
- [FIRRTL] Add an ExtClassOp by @rwy7 in #5954
- [OM] Add integer type by @prithayan in #6030
- [OM][LowerClass] Lower firrtl.integer to om.integer by @prithayan in #6031
- [FIRRTL] Implement InstanceGraphInstanceOpInterface for ObjectOp by @rwy7 in #6041
- [FIRRTL] Gate classes behind firrtl version 3.2.0 by @rwy7 in #6043
- [Verif][LTL] Add basic python binding support by @uenoku in #6040
- [FIRRTL] Parse and lower Open Aggregates Wires by @seldridge in #6028
- [SV] Fix --hw-eliminate-inout-ports by @mortbopet in #6037
- [circt-lec] Generalise LEC to handle non-SSA modules by @TaoBi22 in #5319
- [FIRRTL][IMCP] Don't delete wire if only force result is used. by @dtzSiFive in #6058
- [Seq] Permit clock types on some
seq
operations by @nandor in #6053 - [FIRRTL][IMDCE] Declarations with annotations should not be removed. by @dtzSiFive in #6046
- [FIRRTL][LowerXMR] Handle decls of refs, particularly wires. by @dtzSiFive in #6047
- [FIRRTL][Inliner] Use wires for all. by @dtzSiFive in #6052
- [Seq] Parse registers with a clock type by @nandor in #6062
- [ARC][Seq] Switch arc over to use seq.clock by @nandor in #6054
- [ESI][Runtime] MMIO service support by @teqdruid in #6034
- [NFC] Replace isAnyModule with an isa test. by @darthscsi in #6057
- [FIRRTL][Seq] Lower
firrtl.clock
toseq.clock
by @nandor in #6055 - [InstanceGraph] Add a wrapper for instance paths and fix HW enumeration by @nandor in #6070
- [FIRRTL] Handle duplicate BlackBoxAnnos by @seldridge in #6068
- [FIRRTL] LowerClasses: support ObjectSubfieldOp by @rwy7 in #6064
- [OM][LinkModules] Ignore top-level definitions we don't care about by @rwy7 in #6044
- [FIRRTL][LowerClasses] use early inc range to avoid iter invalidation by @youngar in #6077
- [FIRRTL] Don't canonicalize out-of-bounds subaccess into subindex by @uenoku in #6079
- [FIRRTL] Update LowerClasses to handle property wires. by @mikeurbach in #6067
- [Transforms] Move generally applicable passes to transforms by @mortbopet in #6087
- [FIRRTL] Replace the unrealized conversion cast in
LowerXMR
with an XMR op by @nandor in #6088 - [FIRRTL][IMCP] Separate materialized constants. by @dtzSiFive in #6090
- [FIRRTL][LowerTypes] Support lowering of wire of ref. by @dtzSiFive in #6048
- [SV][HW] Stable port order in SVExtractTestCode by @seldridge in #6075
Full Changelog: firtool-1.53.0...firtool-1.54.0
Firtool Release 1.53.0
What's Changed
- [FIRRTL] re-work PathOp to use annotations by @youngar in #5933
- [FIRRTL] Add ResolvePathsPass by @youngar in #5942
- [FIRRTL] Add path op parsing by @youngar in #5946
- [FIRRTL] Fix crash resolving annotations through operations w/o "type". by @dtzSiFive in #5948
- [FIRRTL] Bool: type, constant, parser/emitter. by @dtzSiFive in #5956
- [FIRRTL][LowerClasses] Bool support. by @dtzSiFive in #5958
- LLVM bump 08/22/2023 -> 08/25/2023 by @dtzSiFive in #5932
- [FIRRTL] Map: MapCreateOp, parsing support. by @dtzSiFive in #5962
- [FIRRTL][NFC] Automatically register ODS types. by @dtzSiFive in #5968
- [FIRRTL][NFC] Split text for types out from summary if long, tweak. by @dtzSiFive in #5969
- [FIRRTL] getOrAddInnerSym: fix bug when targeting a field by @youngar in #5978
- [firtool] Register conversion passes to make avail for mlir-print-ir. by @dtzSiFive in #5976
- [FIRRTL][InferWidths] Ignore propassign, don't error. by @dtzSiFive in #5984
- [FIRRTL] Support properties in aggregates, remove immediately. by @dtzSiFive in #5993
- [FIRRTL] Support noRefTypePorts in applyGCTMemTaps by @seldridge in #5996
- [FIRRTL][IMCP] Support Properties; support materializing string/bool. by @dtzSiFive in #5994
- [FIRRTL][LowerClasses] Lower map types and map.create by @uenoku in #5997
- [FIRRTL][LowerClasses] Support lowering FIRRTL paths ops to OM by @youngar in #5974
- [FIRRTL, HW] Simplify FieldID support by @darthscsi in #5998
- [FIRRTL] Reject instances of classes. by @dtzSiFive in #6014
Full Changelog: firtool-1.52.0...firtool-1.53.0
SiFive Internal Release 1.5.6
What's Changed
- Backport "[FIRRTL] Prefix for Seq Mem Group Extract (#4596)" to sifive-1.5 by @jackkoenig in #5915
- [ExtractInstances] Fix module prefix not being applied to NLA by @fabianschuiki in #5971
Full Changelog: sifive/1/5/5...sifive/1/5/6
Firtool Release 1.52.0
What's Changed
- Add Calyx flow to
hlstool
by @rachitnigam in #5847 - [OM] Change evaluator value representation and evaluate ListCreateOp. by @uenoku in #5820
- [OM] Add map types by @uenoku in #5852
- [LowerToHW] Avoid creating undriven wires for 0-width seq mems by @nandor in #5848
- [NFC] Use ModuleType to compute many properties by @darthscsi in #5715
- [docs] Add top-level document on hls by @mortbopet in #5850
- [firtool] use a single pass manager by @youngar in #5863
- [FIRRTL] Add parsing support for objects and object.subfield by @rwy7 in #5831
- [FIRRTL] Rewrite ExtractClasses as LowerClasses. by @mikeurbach in #5843
- [FIRRTL] Clean up FIRVersion checking by @rwy7 in #5865
- [CI] Upload full shared libs installation for Linux and macOS by @SpriteOvO in #5832
- [Calyx] Support lowering of
arith.select
by @rachitnigam in #5857 - Update docs to add configuration for VS code by @rachitnigam in #5845
- [FIRRTL] Rework internal paths array, cover all ports, maintain. by @dtzSiFive in #5860
- [FIRRTL] Skirt around the GCC major/minor macros by @rwy7 in #5871
- [FIRRTL] Keep classes around by @rwy7 in #5866
- [HW] Verify non-empty inner symbol, symbol names. by @dtzSiFive in #5874
- [NFC] better assert in scf-to-calyx by @rachitnigam in #5877
- [LowerToHW] Emit errors instead of producing undriven wires by @nandor in #5849
- [FIRRTL][LowerXMR] Use defname in ref ABI macros. by @dtzSiFive in #5881
- [FIRRTL][NFC] Compute all bits for recursive type props in enums. by @dtzSiFive in #5888
- [CI] Upload
circt-full-shared
without-libs
suffix by @SpriteOvO in #5891 - [FIRRTL] Fix parsing connection between enum of uninferred width. by @dtzSiFive in #5887
- [NFC] Make FIRRTL modules not implement hwmodulelike by @darthscsi in #5889
- [ci] Use release/asserts=off for nightly shared by @seldridge in #5885
- [PrettyPrinter] Add a callback token to record events by @prithayan in #5514
- Bump LLVM by @prithayan in #5862
- [OM] Implement tuple operations by @uenoku in #5878
- [FIRRTL] Add ListCreateOp. by @dtzSiFive in #5890
- [FIRRTL] List type and create parsing support. by @dtzSiFive in #5892
- [PrepareForEmission] Handle aggregate constants in disallowPackedStruc… by @uenoku in #5880
- [Seq] Add a clock multiplexer op by @nandor in #5872
- [hlstool] Add meanigful names for input and output levels by @rachitnigam in #5876
- [LLVM] Bump by @nandor in #5900
- [FIRRTL][IMDCE] Propagate liveness to/from forceable data/ref results. by @dtzSiFive in #5899
- [Seq] Lower both registers and memories in the same pass by @nandor in #5853
- [ci] Cache unified build/test/install by @seldridge in #5895
- [FIRRTL][Dedup] Handle deduplication of InnerRefAttrs by @youngar in #5883
- [FIRRTL] Put ODS enumerations in the FIRRTL namespace by @youngar in #5907
- [Seq] Merge Seq-to-SV lowering passes by @nandor in #5901
- [FIRRTL][HW] Add InnerSymbolNamespaceCollection by @youngar in #5910
- [FIRRTL] Add InnerSymTarget non-explicit constructors by @youngar in #5911
- Add DistinctAttr type constraints by @youngar in #5912
- [FIRRTL] Add HierPathCache to reuse HierPathOps by @youngar in #5909
- [FIRRTL] Don't erase classes in parallel in LowerClasses by @trilorez in #5913
- [NFC] Add a Module Signature Converter which operates on HWModuleLike not FunctionOpInterface by @darthscsi in #5906
- [OM] Add om.map attribute by @uenoku in #5869
- [OM] Add python accessors to the
om.map
attribute by @nandor in #5914 - [OM] Add om.map_create op by @uenoku in #5870
- [FIRRTL][LowerClasses] Conversion support for Lists. by @dtzSiFive in #5893
- [OM][NFC] Lit test for bool type by @prithayan in #5905
- [HW][IRN/IST] Make hw modules IST's, add verif pass. by @dtzSiFive in #5917
- [NFC] firreg.mlir: Fix duplicate inner symbol in test. by @dtzSiFive in #5926
- [FIRRTL][NFC] Drop use of AnnoTarget for getting inner symbols by @dtzSiFive in #5927
- [firtool] Add LowerClasses for processing OMIR by @youngar in #5929
- [FIRRTL] Add UnresolvedPathOp by @youngar in #5930
- [FIRRTL] Add enumeration for OM path kinds by @youngar in #5931
- [FIRRTL][LowerToHW] Copy InnerSymAttrs to lowered ops by @youngar in #5928
- Calyx native callout pass by @rachitnigam in #5879
Full Changelog: firtool-1.51.0...firtool-1.52.0
Firtool Release 1.51.0
What's Changed
- [FIRRTL] Add LowerGroups Pass by @seldridge in #5659
- [Calyx]Add invoke pass by @linuxlonelyeagle in #5635
- [FIRRTL][CAPI] Add a new function to get
ParamDeclAttr
by @SpriteOvO in #5792 - [FIRRTL][IMCP] Refactor and generalize overdefined operations by @uenoku in #5797
- [FIRRTL][HW] Add verbatim literal support by @rwy7 in #5774
- [Ibis] Add
ibis.this
by @mortbopet in #5794 - [FIRRTL][Inliner] Support per-field syms, update local users. by @dtzSiFive in #5776
- [FIRRTL][NFCI] Cleanup misc "inner_sym" uses. by @dtzSiFive in #5802
- [FIRRTL] Reject unsupported port symbols on instance + class ops. by @dtzSiFive in #5796
- [cmake][CI] Use llvm_gtest target directly. by @dtzSiFive in #5804
- [OM] Add
om.list_create
to create lists of objects by @nandor in #5418 - [Pipeline] Remove
ext
input from pipelines by @mortbopet in #5805 - [Seq] Add an inner symbol to permit references to clock gates by @nandor in #5799
- [FIRRTL][NFC] Add fir tests relating to probes, from spec. by @dtzSiFive in #5781
- [FIRRTL] Clean up RWProbe's verifier by @youngar in #5806
- [HW][Seq][NFC] Fix layering re:includes to FIRRTL headers. by @dtzSiFive in #5811
- [FIRRTL] add DedupGroupAnnotation by @albertchen-sifive in #5787
- [CI] Switch back to ccache action for nightlies by @teqdruid in #5813
- [PipelineToHW] Fix
PipelineToHW
TSAN issue by @mortbopet in #5817 - [FIRRTL] Add PathOp by @youngar in #5808
- [FIRRTL][LowerToHW] Fix race by processing ports before parallel, fix failure path. by @dtzSiFive in #5818
- [Ibis] Add containerize pass by @mortbopet in #5810
- [FIRRTL][Inliner][NFC] Cleanup with some scoped state structs. by @dtzSiFive in #5812
- [FIRRTL] Add ObjectSubfieldOp by @rwy7 in #5768
- [FIRRTL] RWProbeOp: Add requirement+verify def before use. by @dtzSiFive in #5807
- [ESI] Remove auto-wrap functionality by @teqdruid in #5823
- [FIRRTL][HW] Replace ModuleNamespace with InnerSymbol one. by @dtzSiFive in #5819
- [CMake] Implement add_circt_tool() by @nickelpro in #5821
- [CI] Attempt to fix nightly cache evictions by @teqdruid in #5826
- Bump LLVM by @rwy7 in #5825
- [Python] Handle inner symbols in attribute_to_var by @uenoku in #5824
- [FIRRTL] RWProbeOp: support width inference. by @dtzSiFive in #5782
- [FIRRTL][Emitter] RWProbeOp, RefCast, better forceable support. by @dtzSiFive in #5779
- [FIRRTL][CAPI] Fix undefined reference for
mlirExportFIRRTL
by @SpriteOvO in #5790 - [FIRRTL][Import][NFC] Drop unused annotationMap, touchup comment. by @dtzSiFive in #5836
- [ci] Finish, use reusable workflow for build/test/install by @seldridge in #5838
- [LowerToHW] Remove temporary wire optimization by @nandor in #5837
- [FIRRTL][BlackboxReader] Don't insert outside circuit. by @dtzSiFive in #5840
- [FIRRTL][Emitter] Sync to use "latest", and bump that to 3.1.0. by @dtzSiFive in #5839
- [HW/Support] Introduce InstanceGraph interface by @mortbopet in #5833
- [FIRRTL][OMIR] Remove deprecated OMConstant node by @youngar in #5841
New Contributors
- @nickelpro made their first contribution in #5821
Full Changelog: firtool-1.50.0...firtool-1.51.0