Emil J. Tywoniak
baa8e18964
opt_clean: trace $connect edges from the liveness roots too
2026-07-22 01:26:23 +02:00
Emil J. Tywoniak
5c7f7d4a3d
WIP opt_clean: garbage collect against the signorm index
2026-07-22 01:25:39 +02:00
Emil J. Tywoniak
ed7e50be24
tests: exclude signorm marker cells from cell-count assertions
2026-07-22 01:22:17 +02:00
Emil J. Tywoniak
e27e695c9e
passes: leave signorm mode where the index cannot be maintained
2026-07-22 01:22:01 +02:00
Emil J. Tywoniak
46603f72b3
memory_libmap: provide blackboxes for the RAM cells it instantiates
2026-07-22 01:21:43 +02:00
Emil J. Tywoniak
d80ad67f64
check: ask per module whether it carries a signorm index
2026-07-22 01:21:18 +02:00
Emil J. Tywoniak
82e6b8995b
memory_bram: intern generated blackbox names as public twines
2026-07-22 01:21:00 +02:00
Emil J. Tywoniak
3d45ce0fbc
sigmap: take the signorm index's map directly instead of via connections()
2026-07-22 01:21:00 +02:00
Emil J. Tywoniak
c17cf30775
opt_dff: only build the ModWalker index under -sat
2026-07-22 01:20:33 +02:00
Emil J. Tywoniak
024a71626d
opt_expr: sub_not signorm compatibility
...
Route the (2^k-1)-x -> ~x rewrite through OptExprPatcher like its
sibling transforms in this file, instead of raw module->Not +
module->connect + module->remove. Loosen the postopt assertion to
tolerate the $input_port shim cell bufnorm adds for the (still
signorm-active) input port, matching the t:$*_port %d idiom already
used by opt_expr_alu.ys and other sibling tests.
2026-07-20 16:40:46 +02:00
Emil J. Tywoniak
71e2045e38
proc_mux: WIP
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
a7938567fe
rtlil: sort twines by string, not by ID, in sort methods
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
2999f9de60
ff: fix src_twine
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
56b61efeda
json: fix twine escaping
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
5a0a978938
rtlil_backend: fix dumping sigsig connections
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
8b47d41835
sort: fix whitespace
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
5f437ab076
write_verilog: write out src twines as src attributes
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
6b6847af51
tests/gatemate: update fsm LUT counts for new proc src mapping
...
CC_LUT2 1 (was 2), CC_L2T4 max 15 (was 14) reflect the cell mapping
produced after the proc src-location changes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
d72d4c8bba
techmap: decode derived_name in the map pool, not the target design
...
derived_name and the template's marker wire are interned in map->twines;
decoding them with design->twines read an out-of-range/foreign pool slot
(garbage, or a crash once pool sizes diverge) in the _TECHMAP_FAIL_ log.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
e41ea6788e
genrtlil: intern action src as verbatim Twine
...
add(std::string) tags bare strings as public names, so a single-source
concat (which returns the lone ref unchanged) decoded with a spurious
'\' prefix, splitting one source file into two in linecoverage output.
add(Twine{}) stores the location string verbatim like set_src_attr.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
7f791a4fb9
proc_dff: better error context
...
(cherry picked from commit 404ce980e4 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
cf3867bb14
proc_mux: include switch expression location in $eq src
...
(cherry picked from commit 383daa1eb3 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
3d2e268154
kernel: add SwitchRule signal_src
...
(cherry picked from commit 53585db9f7 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
4f9fa58efa
docs: workaround for warning from dump
...
(cherry picked from commit 85a17b0366 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
c74bc43cfd
proc_mux, genrtlil: make use of case_src for better case condition vs block tracking
...
(cherry picked from commit a24c260998 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
b2d57e5d41
rtlil: add case_src to CaseRule
...
(cherry picked from commit a217a5c716 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
9bc771e051
proc_mux: copy switch src to _CMP wire
...
(cherry picked from commit 502ba3734b )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
6182c7dd85
proc_mux: copy mux src to Y port
...
(cherry picked from commit da65a18f39 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
e455564b6e
proc_mux: add comments
...
(cherry picked from commit ee800087e8 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
cf857b6154
proc_mux: optimize source map locality for index density
...
(cherry picked from commit b3aea1b5d2 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
ea60c06c43
proc_dff: add wire src attributes to dff cells
...
(cherry picked from commit 4072bcfd0b )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
0aaf46c692
verific: use SyncActions
...
(cherry picked from commit f4a69805ae )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
a566acd802
proc_mux: default to case src when action src is missing
...
(cherry picked from commit 469083dcaa )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
707bac5208
proc_mux: add src test
...
(cherry picked from commit a2e8e352b6 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
90324ad24f
docs: word_mux grammar
...
(cherry picked from commit 985e98935f )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
a606d6416d
proc_mux: refactor
...
(cherry picked from commit 778a667a91 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
f6844f0e36
proc_mux: emit fused action location src attributes on procmuxes
...
(cherry picked from commit cacd584347 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
6f3b384ac4
rtlil: add source tracking to CaseRule actions
...
(cherry picked from commit c36370f227 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
9ac4905aeb
verilog: fix case location
...
(cherry picked from commit 7713b5a811 )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
dad4961221
rtlil: replace SigSig actions with new type SyncAction
...
(cherry picked from commit 94a53e08bc )
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
bbfadc27a1
twines phase-3 build fix: post-fork main files broken by twine migration
...
kernel/compressor_tree.cc, passes/tests/test_kogge_stone.cc,
passes/opt/peepopt_shiftpow2.pmg, and techlibs/lattice/lattice_dsp_nexus.pmg
(plus the 5 new constids it needs: A0, B0, PIPELINED, SIGNED, SUBTRACT)
were all added to main after the emil/twines-proc-srcloc fork point, so no
commit in this phase's range ever touches them. They still use the old
IdString-based addWire/addCell/setPort/getParam APIs (NEW_ID, plain \X
port names) that the twine migration replaces, so they fail to build
against current HEAD. Not attributable to any single commit in this
phase per task.md's carve-out for genuinely phase-spanning fixes -
bundled here as its own commit rather than folded into an unrelated
pick.
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
4cf494d1d3
memory_map: don't rebuild TwineSearch
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
5cc17f5dd9
tests: undo skipping broken
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
9408564d56
Fix twines
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
8db1082dd2
Fix twines
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
fd1d75122d
patch: fix signorm commit broken by twine rename
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
9552cba923
rtlil: options for dumping twines
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
6bae7061ce
hierarchy: fix twines
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
bfc69676d2
xaiger: fix twines
2026-07-20 15:01:30 +02:00
Emil J. Tywoniak
26031e94f0
functinoal: twines
2026-07-20 15:01:30 +02:00