Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/llvm/circt
Circuit IR Compilers and Tools
https://github.com/llvm/circt
The motivation for this refactor is to:
* remove the entry block - there's a bunch of different...
This functionality isn't critical yet, so just disable the tests. Broken
by https://github.com/l...
Make `LowerToHW` emit `seq.firmem` operations for memories instead of
emitting generator ops. T...
cea37c17b1dc03832320eccf2c625f768954f0ea authored over 1 year ago
Extend zero-width-ref pruning to handle Forceable + force/release ops,
and test nothing breaks ...
Chase to defining op, and (re-)index using ref.sub's.
a1da32bfbefaee6396e9eefb04017b3128eafd3d authored over 1 year agoImplementation:
Extend the refSend list node to support recording indexing
along the resolut...
This commit takes the ESI `ChannelRewriter` and generalizes it to provide a generic utility for ...
ba7c4f202bb2e9254c7edf0a3dbddd2835720617 authored over 1 year agoThis PR modifies strictconnect's verifier/parser/printer to allow different (but structurally eq...
9eef846fb2c7caee1aab23c0d452b332523ccc05 authored over 1 year agoThis avoids stack overflow when parsing deeply nested whens.
480122603a9fe003df82fd712f5b64ca59620b57 authored over 1 year ago72672984a7fa4092d2295a010527d647c2893ae3 authored over 1 year ago
* Drop unused smallvector
* No need to copy xmrPathSuffix, simplify
Fixes #5003.
87aa42fdaf72ddc58769b44f1588c0ecd7e5d67d authored over 1 year agoThis commit parallelizes hash calculation. This reduces Dedup execution time by 40% in a large d...
8cff70f329ac6cac7d0cc89760a96f167e8b9834 authored over 1 year agocloses #5554
4c4bc0d0bb3354682b2473640c0bc8cbb9ea7eae authored over 1 year ago5d8694ee433a3adb2b6fe63dc65900f109318c9e authored over 1 year ago
19a7ae352913e44ebed8d4895298d558682b9c59 authored over 1 year ago
This fixes a bug that `andr(pad(x:sint, n))` is canonicalized into `0`.
08b407136823ad8516e16674abdb297688cf5206 authored over 1 year ago430f215db69e087b07058c15e7db8b157810619c authored over 1 year ago
This appears to be a non-functional change.
95323e3e03b41c8219dc3326307ad483d9774af0 authored over 1 year ago* fixed ordering bug
* documentation
* addressed comments
---------
Co-authored-by: ...
22392d552b45f253f85435dcc78451101bf11a44 authored over 1 year agoThis adds a folder for clock gates which removes clock gates that are transitively enable'd by o...
8d02f0711714f020d9fda3e4dad8c070fc0a4994 authored over 1 year agoAlso renames the data output field of the op to avoid aliasing with the built-in `getResultTypes...
d62ef1a13d850ea7a77ecdaeafaf55e40b01c556 authored over 1 year ago
Fixes #5531.
TLDR: `narrowOperationWidth()` copies attributes to a `comb.concat` operation, whi...
467cd20347fe520fa311c268d17798b22e099d90 authored over 1 year ago
... based on a name-to-index `DenseMap` built from the `hw::ModulePortInfo` struct.
Needed in v...
Unclear what this models/means, and instead of doubling down
on workarounds lets drop this unti...
closes #5524
8077de82a6fafed6248edc2a15ba39a23103c893 authored over 1 year ago74332083e2dd5e58a1c863efd8c8ab55cddc25b5 authored over 1 year ago
Async reset annotations are currently gathered sequentially. We can instead parallelize the accu...
d19eeb2478e6857e63b72308a451711b1a0c3be6 authored over 1 year agoThis commit deprecates addMuxPragma flag in LowerToHW and implements lowering of MuxCell intrins...
b903f4890994eaaff86481aa06452903582d5b06 authored over 1 year agoFix a compile error in nightly tests
4ffcdd22c61a735a09766e065b39ac9f6d2125d8 authored over 1 year agoAlso changes to that the `clock-gate-regs` options actually implements clock gates instead of a ...
5d69c088d2f6e291467f08fcfe822ca8559d8ceb authored over 1 year agoThis adds `anonymousType` to type storages of bundle/vector/enum/alias type and define `getAnony...
431d106bfd89e3e0314b455aa2d97bd2fd31e6f3 authored over 1 year ago* Split out DenseMapInfo specialization: https://reviews.llvm.org/D150997
524225b773aeb7c832b2124cb9a93b3a0b361805 authored over 1 year agoLong delayed, this should fix #5488. It also removes the shorthand syntax.
d7108532ce9f46d37cceb698f11ed0cd7c1e5a3f authored over 1 year ago546c2d5107c159b6dce3b08bd8ea6636de6451b2 authored over 1 year ago
Co-authored-by: Pai Li <[email protected]>
Co-authored-by: Caleb <[email protected]>
Change the FIRRTL emitter to use v3.0.0 of the FIRRTL specification.
Logic for emitting an older...
Move FIRRTL Version code into a header to enable reuse of this in other
places (in the future).
...
c44803e680639fa46a3badf33a0f773911ec8f8a authored over 1 year ago
In the preprocess there seems to be an unintended use of `walk`. Currently we walk the entire c...
fcffd28c2259004bb0610c7aeb812af1db17302a authored over 1 year agoParticularly, clarify can't force a single element of an aggregate.
698b39f5d7134a119cfd242aecb8341ecda9ba80 authored over 1 year agoIn large designs, it takes non-negligible amount of time to construct instance graphs (especiall...
eadf9505fb3699db99cd6c6706de425848022e1e authored over 1 year agoGreatly reduces the number of ops in real designs
wc -l foo.mlir foo5.mlir
2247057 foo.ml...
227ae284a9c0d8353307b5e1125cf34571fd7e87 authored over 1 year ago
40bd21e3f402ca84516669a7b05a6e72a15b5fdd authored over 1 year ago
As pointed out in https://github.com/llvm/circt/pull/5512, if there was an unreachable module fr...
d370d25eb18f6a73d8090498b02d59c8c2f4e1c8 authored over 1 year agoThis PR implements FIRRTLTypeSwitch which extends TypeSwitch so that we can use firrtl::type_{ca...
94af741a61d734ca1c853e1059f281d676b59a9e authored over 1 year ago
This changes LowerFIRRTLToHW to use backedges instead of temporary wire
operations. The tempora...
This adds a test to show the behaviour when a dead module instantiates a
child module, and uses...
When we lower input ports on instances, if there are zero or multiple
writers to the input port...
This change removes some cached information related to how module ports
relate to instance resu...
Enforce general requirement that all elements of something
implementing FieldIDTypeInterface mu...
094f34849da2ee5c5ea2ee689b849844dc80e9e6 authored over 1 year ago
Avoid constructing a null Location.
AFAIK presently unreachable.
3837a73c0aa31e204b32830bd54ed2e7fab4667e authored over 1 year agoff959102ffe3c66550187874f5d8d114af6e5a54 authored over 1 year ago
These cases shouldn't be reachable, tweak handling.
5c1fcfcaf72d43a9fcbb7543e92fa65d4eee4ad3 authored over 1 year agoThis adds SV attributes support for comb mux op. Mux canonicalization is disabled if there is SV...
6d10e007383074cc6aa552b5742b3b3d072bda1d authored over 1 year agof8d0eb4881180194137a4b3afb127e71bee45bc3 authored over 1 year ago
Previously, this would have emitted as `always @(edge clock or edge en)` which is invalid verilo...
bc47ca69547c7f2cc0ac50150ff27ae9d87cfbda authored over 1 year agoThis commit parallelizes the post processing of InferWidth. InferenceTypeUpdate just updates all...
563db8673da7288ca82064e3ba734f09621e4a4b authored over 1 year agoUpdate the FIRRTL exporter to properly escape literal identifiers.
Signed-off-by: Schuyler Eldr...
75053880d4d3a3c73cc7bba1a7ed8ccbe9b18a58 authored over 1 year agoCleanup the `HWExportModuleHierarchyPass` pass in the following ways:
1. Do not emit JSON dir...
4740516f575536a491286e362968e8d43b8d67a5 authored over 1 year ago
Use symbols to emit memory metadata. This is required to ensure that the
instance names in the...
Pass 2-state flag on construction of elementwise logical op.
Assuming lowerElementwiseLogical...
9370ee49a221f68106e644284de4e4fd4167ba2c authored over 1 year agoAdapted solver constraints to ensure all outputs must be equal.
36c338bf218e26bef9d4293a7ba1fc3d93504b40 authored over 1 year agoAdd two new property-aggregate types: `firrtl.list` and `firrtl.map`.
3665b66870ddd238b58b19168800ad8d83358d57 authored over 1 year agolementType -> elementType.
NFC since we don't generate accessors (for friendlier const access...
53308509cbd6df53c62e87923e138c1884e7d952 authored over 1 year ago
* Add Windows (firtool.exe)
* Remove Ubuntu 18.04 (runner is deprecated)
* Name archives based...
c09770b4907e726c4a676a9ef02514d6a4b975e5 authored over 1 year ago
As mentioned in the removed TODO, `AllocateState` currently has an expensive combination of `mov...
5f97768865bd0ca021e455e7cca15c4a9e8047ec authored over 1 year agofor some reason, this also exposed a missing include in `circt-reduce.cpp`.
34272a23d134d357e7a40e63f2cc8cce33c7c952 authored over 1 year ago7d3e3325ef8b30940c71c40d9bd7a3126c979999 authored over 1 year ago
7ba9907acd0d72bbe7624b44d6cb8007f704ed9e authored over 1 year ago
This finished support for handling InstanceOps with properties by
converting them into ObjectOp...
243e6c360e5c64e07c4dfb1a78ce88df6ee0c3a7 authored over 1 year ago
2706aec57e3255a9783458f1a988acea6cc80ca1 authored over 1 year ago
Was causing problems in build since SV passes wasn't a dep.
69ca7c20fc8f2d459a48e172a1a808d0cbcf1ba9 authored over 1 year ago
Change HWExportModuleHierarchy to use the optional "hw.verilogName" of an
instance as opposed to...
Add the `LowerFirMem` pass which lowers `seq.firmem` ops to a
corresponding `hw.module.generate...
Flows using this parameter will need to be updated.
a40f476636fba345b7ae8a31a09fd1c8e90f8172 authored over 1 year agoSeparated from #5167. This commit implements parser changes to support type alias.
Currently...
9ab2978d947b5f6f24343a56af5feeadbc6b148b authored over 1 year agoc7bab554e016f046152b14bff1433dde40661eb5 authored over 1 year ago
This commit adds an explicit 'go' signal to the pipeline abstraction.
This signal is used to in...
... for those times when you don't want to externalize a clock gate. My immediate use for this i...
46562d3ad8b001adf784abf902e26633df2e3f25 authored over 1 year ago* [FIRRTL] Reset values added in InferResets are now const.
This will facilitate future work ...
9b3b3e57289eb1d3e2fe48eb2105d127bbec1591 authored over 1 year agoSigned-off-by: Schuyler Eldridge <[email protected]>
e8bd49ead1437963f4ad520941febfbe20955595 authored over 1 year ago
Add a utility to get the element name attribute from a bundle type.
Previously, this was only av...
Cleanup trailing whitespace in a test.
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifi...
5d389c0c4415c28fea39ed500e91fdc50c858c33 authored over 1 year ago
Change the MLIR printing/parsing of the MLIR representation of FIRRTL
bundle types to use quoted...
Factor common code for MLIR parsing of bundle field names into a common
static function.
Signed...
cb325641e06760e4708f8c375daccb17e391fb16 authored over 1 year agoFix #5459. Use namehints and name attributes on module boundary as port names of extracted modul...
24cf2f22e97c07423e1ad1c24decc9bd683ee9b9 authored over 1 year agoFix #5465. This fixes an issue that constants used by both designs and testcode.
ff159a901c8dea567a60ecf39be7c51f11cdf406 authored over 1 year agoThe canonicalizer no longer accesses the op after it has been erased.
aa1219ec6d1c6ae7c2a97cb63af01b0a65163767 authored over 1 year ago
Optionally keep both info and fir locations during parsing,
and emit all (other) FileLineCol lo...
This implements `type_isa/type_cast/type_dyn_cast/type_dyn_cast_or_null`.
When a given type is ...
dc1d549552df0e1335e6770d93cf14120ece0a7c authored over 1 year ago
e9a3910c21d9ac4f2ff9e0da465caf65aa5394cf authored over 1 year ago
Add a new `FirMemOp` to the Seq dialect to capture the semantics of
FIRRTL memories at the HW l...