Emil J. Tywoniak
7c73fd62e4
twine: fix replayability, reduce TwineSearch usage
2026-06-22 17:53:19 +02:00
Emil J. Tywoniak
1b7daaae2e
signorm: discard newly_driven capacity for performance
2026-06-20 18:09:10 +02:00
Emil J. Tywoniak
0c450ce8c8
WIP migration to twine
2026-06-18 19:27:41 +02:00
Emil J. Tywoniak
c3ffbf6fae
WIP
2026-06-12 00:18:53 +02:00
Emil J. Tywoniak
afdae7b87e
WIP
2026-06-11 20:02:02 +02:00
Emil J. Tywoniak
8e522b08c0
WIP
2026-06-11 13:17:54 +02:00
Emil J. Tywoniak
f592f2f3af
WIP
2026-06-10 19:22:53 +02:00
Emil J. Tywoniak
2117af318c
WIP
2026-06-10 14:54:48 +02:00
Emil J. Tywoniak
d13dfc21f4
WIP
2026-06-10 14:54:48 +02:00
Emil J. Tywoniak
7656347b44
patch: split into single-output patch + multi-output patch_ports; drop input-cone gc
2026-06-10 14:53:37 +02:00
Emil J. Tywoniak
c264649ae7
rtlil, patch: incremental signorm via connect_incremental, replacing batched sigNormalize in Patch::patch
2026-06-10 14:52:53 +02:00
Emil J. Tywoniak
c3457e2e5c
WIP
2026-06-10 14:52:50 +02:00
Emil J. Tywoniak
dab9a386cc
opt_expr: WIP use patcher more
2026-05-28 22:51:30 +02:00
Emil J. Tywoniak
5a6568edbe
rtlil, patch: update signorm index and driver fields when committing Cell from Patch to Design
2026-05-23 01:09:26 +02:00
Emil J. Tywoniak
b0eb50be1b
fixup! patch: working multi-cell signorm invariant
2026-05-23 00:11:16 +02:00
Emil J. Tywoniak
db1c1d4359
patch: working multi-cell signorm invariant
2026-05-23 00:10:00 +02:00
Emil J. Tywoniak
8c26ecd2a6
patch: WIP multicell patch test
2026-05-23 00:09:17 +02:00
Emil J. Tywoniak
72b60b6cef
signorm: safer indexing if broken invariant
2026-05-22 18:41:50 +02:00
Emil J. Tywoniak
b9eae3f64b
rtlil: publish signorm fanout
2026-05-22 18:41:49 +02:00
Emil J. Tywoniak
5dce475325
signorm: add timers
2026-05-22 18:40:16 +02:00
Emil J. Tywoniak
5de8452b57
rtlil_bufnorm: fix setup_driven_wires constant handling on unknown port direction
2026-05-22 18:40:16 +02:00
Emil J. Tywoniak
e73b828e07
rtlil_bufnorm: more xlog
2026-05-22 18:40:01 +02:00
Emil J. Tywoniak
754709aa01
rtlil: sigNormalize Module when added to Design in signorm mode
2026-05-22 18:40:00 +02:00
Emil J. Tywoniak
5355a1739e
rtlil_bufnorm: more xlog
2026-05-22 18:39:42 +02:00
Emil J. Tywoniak
d7b6f1c095
rtlil_bufnorm: ignore timing info harder
2026-05-22 18:39:42 +02:00
Emil J. Tywoniak
eb6dd47bd6
timinginfo: special-case $specify2 in signorm invariant
2026-05-22 18:39:04 +02:00
Emil J. Tywoniak
b42136aa8c
signorm: remove $input cells when leaving
2026-05-22 18:37:58 +02:00
Emil J. Tywoniak
d541def612
signorm: skip const when fixing fanout
2026-05-22 18:37:58 +02:00
Emil J. Tywoniak
fb03a34277
rtlil: add dump_sigmap for hacky signorm debugging
2026-05-22 18:37:58 +02:00
Emil J. Tywoniak
af48c1cdfb
rtlil: fix zero width SigSpec crash in signorm setPort unsetPort
2026-05-22 18:37:13 +02:00
Emil J. Tywoniak
e6515cfd93
rtlil_bufnorm: fix cell deletion deferral bug
2026-05-22 18:37:13 +02:00
Jannis Harder
423c8be71b
WIP half broken snapshot
2026-05-22 18:37:11 +02:00
Jannis Harder
30505c2cd6
WIP remove dead code
2026-05-22 18:34:52 +02:00
Codexplorer
e41b969da2
Refactored uses of log_id()
2026-05-08 20:59:24 -07:00
Robert O'Callahan
46cb05c471
Pass IdString by value instead of by const reference.
...
When IdString refcounting was expensive, it made sense to pass it by const reference
instead of by value, to avoid refcount churn. Now that IdString is not refcounted,
it's slightly more efficient to pass it by value.
2025-12-22 01:52:59 +00:00
Jannis Harder
86fb2f16f7
bufnorm: Refactor and fix incremental bufNormalize
...
This fixes some edge cases the previous version didn't handle properly
by simplifying the logic of determining directly driven wires and
representatives to use as buffer inputs.
2025-09-29 08:21:28 +02:00
Jannis Harder
d88d6fce87
kernel: Rewrite bufNormalize
...
This is a complete rewrite of the RTLIL-kernel-side bufnorm code. This
is done to support inout ports and undirected connections as well as to
allow removal of cells while in bufnorm mode.
This doesn't yet update the (experimental) `bufnorm` pass, so to
manually test the new kernel functionality, it is important to only use
`bufnorm -update` and `bufnorm -reset` which rely entirely on the kernel
functionality. Other modes of the `bufnorm` pass may still fail in the
presence of inout ports or undirected connections.
2025-09-17 13:56:46 +02:00