Emil J. Tywoniak
92b16718c9
twine: fix replayability, reduce TwineSearch usage
2026-07-20 13:57:10 +02:00
Emil J. Tywoniak
3bfc7228f3
signorm: discard newly_driven capacity for performance
2026-07-20 12:27:18 +02:00
Emil J. Tywoniak
65f35a88eb
WIP migration to twine
2026-07-20 12:27:18 +02:00
Emil J. Tywoniak
77ad54139e
WIP
2026-07-20 12:27:17 +02:00
Emil J. Tywoniak
e952044215
WIP
2026-07-20 12:27:17 +02:00
Emil J. Tywoniak
7422b71802
WIP
2026-07-20 12:27:17 +02:00
Emil J. Tywoniak
1210d8e117
WIP
2026-07-20 12:27:02 +02:00
Emil J. Tywoniak
30bc1c23ee
WIP
2026-07-20 12:27:02 +02:00
Emil J. Tywoniak
10436f31cd
WIP
2026-07-20 12:27:02 +02:00
Emil J. Tywoniak
9cebc6e412
patch: split into single-output patch + multi-output patch_ports; drop input-cone gc
2026-07-17 23:49:06 +02:00
Emil J. Tywoniak
2c107f19e8
rtlil, patch: incremental signorm via connect_incremental, replacing batched sigNormalize in Patch::patch
2026-07-17 23:48:54 +02:00
Emil J. Tywoniak
fd67ce2b80
WIP
2026-07-17 23:48:54 +02:00
Emil J. Tywoniak
7652b1b52e
opt_expr: WIP use patcher more
2026-07-17 23:48:18 +02:00
Emil J. Tywoniak
c7a8fe1c79
rtlil, patch: update signorm index and driver fields when committing Cell from Patch to Design
2026-07-17 23:48:06 +02:00
Emil J. Tywoniak
b95565a8d9
fixup! patch: working multi-cell signorm invariant
2026-07-17 23:48:06 +02:00
Emil J. Tywoniak
71f7f586aa
patch: working multi-cell signorm invariant
2026-07-17 23:48:06 +02:00
Emil J. Tywoniak
2c1d114cb1
patch: WIP multicell patch test
2026-07-17 23:48:00 +02:00
Emil J. Tywoniak
abebf4f2db
signorm: safer indexing if broken invariant
2026-07-17 23:38:01 +02:00
Emil J. Tywoniak
f2e5bcb86a
rtlil: publish signorm fanout
2026-07-17 23:38:01 +02:00
Emil J. Tywoniak
3010c0fc31
signorm: add timers
2026-07-17 23:38:01 +02:00
Emil J. Tywoniak
fb06c1add5
rtlil_bufnorm: fix setup_driven_wires constant handling on unknown port direction
2026-07-17 23:38:01 +02:00
Emil J. Tywoniak
83fa720157
rtlil_bufnorm: more xlog
2026-07-17 23:33:03 +02:00
Emil J. Tywoniak
2fc93aa711
rtlil: sigNormalize Module when added to Design in signorm mode
2026-07-17 23:33:03 +02:00
Emil J. Tywoniak
f7149450b4
rtlil_bufnorm: more xlog
2026-07-17 23:33:02 +02:00
Emil J. Tywoniak
c40974ee59
rtlil_bufnorm: ignore timing info harder
2026-07-17 23:33:02 +02:00
Emil J. Tywoniak
3b1e79d312
timinginfo: special-case $specify2 in signorm invariant
2026-07-17 23:33:02 +02:00
Emil J. Tywoniak
9cc0997658
signorm: remove $input cells when leaving
2026-07-17 23:32:34 +02:00
Emil J. Tywoniak
c8faf605f7
signorm: skip const when fixing fanout
2026-07-17 23:32:34 +02:00
Emil J. Tywoniak
b408a059ad
rtlil: add dump_sigmap for hacky signorm debugging
2026-07-17 23:32:34 +02:00
Emil J. Tywoniak
3b956cea1b
rtlil: fix zero width SigSpec crash in signorm setPort unsetPort
2026-07-17 23:32:34 +02:00
Emil J. Tywoniak
479ab70890
rtlil_bufnorm: fix cell deletion deferral bug
2026-07-17 23:32:34 +02:00
Jannis Harder
b84beb598f
WIP half broken snapshot
2026-07-17 23:32:20 +02:00
Jannis Harder
51fc03688a
WIP remove dead code
2026-07-17 23:31:11 +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