3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2026-08-11 00:22:10 +00:00
Commit graph

17730 commits

Author SHA1 Message Date
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