Miodrag Milanovic
b1fda43bcd
chores: first pass of fixes spaces to tabs
2026-08-21 14:43:33 +02:00
Miodrag Milanović
2fd290ad47
Merge pull request #6134 from SimonEbner/main
...
Retry read operations interrupted by EINTR
2026-08-20 16:24:26 +00:00
Lofty
be69f88e55
Merge pull request #6135 from YosysHQ/lofty/abc-refactor-13
...
abc: remove -sop
2026-08-20 09:34:26 +00:00
nella
59a3826bbd
Merge pull request #6130 from DanielMBouyou/arith-tree-narrow-link
...
arith_tree: do not flatten a chain link narrower than its consumer
2026-08-20 08:40:25 +00:00
Lofty
caceaaa2bb
abc: remove -sop
2026-08-19 12:52:10 +01:00
Simon Bucher
b98d7b6853
Gracefully handle EINTR during read.
...
EINTR should be retried.
2026-08-19 10:46:41 +00:00
Lofty
edb411a622
synth_greenpak4, nlutmap: remove
2026-08-19 10:56:16 +01:00
Daniel M Bouyou
e5c56c6400
arith_tree: do not flatten a chain link narrower than its consumer
...
sole_chainable_consumer folded a cell into its consumer without ever
comparing widths. A link truncates its result at its own Y width, and that
truncation is invisible only when the consumer truncates at least as hard,
since (x % 2**link) % 2**parent == x % 2**parent holds only when
parent <= link. When the consumer is wider, the carry the link discards
becomes observable, and flattening the chain silently recovers it.
For
module top(input [7:0] a, b, c, output [8:0] o);
wire [7:0] t = a + b;
assign o = t + c;
endmodule
synth -arith_tree computes a + b + c where the design specifies
((a + b) % 256) + c. The two differ by 256 whenever a + b overflows,
for example at a=169 b=135 c=7.
alumacc already guards the structurally identical $macc merge using
macc_may_overflow(); arith_tree carried no equivalent check.
Add two cases to tests/arith_tree/arith_tree_equiv.ys: equiv_double_neg
widened to a 5 bit result, and a dedicated equiv_narrow_intermediate.
2026-08-18 12:06:48 +02:00
nella and Mike Inouye
38b6e5e76c
fix WASI, harden scl cache locking.
...
Co-authored-by: Mike Inouye <[email protected] >
2026-08-18 11:31:57 +02:00
Mike Inouye
977e55315d
fix macOS build
...
Signed-off-by: Mike Inouye <[email protected] >
2026-08-17 22:05:09 +00:00
Mike Inouye
7c3becfbcd
add file lock on liberty scl cache
...
Signed-off-by: Mike Inouye <[email protected] >
2026-08-17 21:18:34 +00:00
Lofty
621d943ac8
Merge pull request #6101 from YosysHQ/lofty/abc-refactor-10
...
read_xaiger2: remove
2026-08-17 17:42:25 +00:00
nella
598862f45b
Merge pull request #6125 from YosysHQ/nella/share-sat-effort
...
share: limit SAT effort [sc-750]
2026-08-17 12:18:28 +00:00
nella
027677d43b
Move scl cache args to libcache, fix -disable.
2026-08-17 12:37:49 +02:00
nella
ce0785a01b
Limit SAT effort.
2026-08-17 12:20:43 +02:00
nella
5efa8187ad
Add control over scl cache.
2026-08-17 10:49:45 +02:00
Emin
b564fa2e71
liberty_cache: key SCL cache on ABC executable mtime and size
...
The SCL format is written/read by ABC and can change between ABC builds,
so a cache entry created with a different ABC binary must not be reused.
2026-08-15 23:16:31 +04:00
nella
b8959e70ba
Merge pull request #6072 from YosysHQ/nella/dlatchlibmap-cleanup
...
Update to `dfflibmap` to be able to map LATCHes (clean up of #5976 )
2026-08-13 08:38:19 +00:00
Emil J. Tywoniak
0253911ee2
opt_clean: move unused_bits analysis to kernel/unused_bits.h
2026-08-12 11:42:50 +02:00
Lofty
1dce7895e0
read_xaiger2: remove
2026-08-11 08:56:55 +01:00
nella
b19d906075
Fix replace_known misindexing on constant S bits.
2026-08-11 07:07:33 +02:00
Lofty
fd6367405e
Merge pull request #6077 from YosysHQ/lofty/abc-refactor-8
...
abc_ops_reintegrate: xaiger2 compatibility
2026-08-10 13:14:40 +00:00
nella
a03e5ec2ca
Style fixups.
2026-08-10 10:59:03 +02:00
nella and Iztok Jeras
e75e42c5d7
Pick first cell of smallest area.
...
Co-authored-by: Iztok Jeras <[email protected] >
2026-08-10 10:59:03 +02:00
nella and Iztok Jeras
011c3fc8c3
Add latch mapping.
...
Co-authored-by: Iztok Jeras <[email protected] >
2026-08-10 10:59:03 +02:00
nella and Iztok Jeras
c590157cd3
Deduplicate FF cell finders.
...
Co-authored-by: Iztok Jeras <[email protected] >
2026-08-10 10:59:03 +02:00
nella
9c144d59aa
Fix OOB read.
2026-08-07 14:29:14 +02:00
Catherine
1277640bdf
CMake: add missing dependency edges for synth_* passes.
2026-08-06 14:48:56 +00:00
nella
e20909bb3b
Collect chains via TopoSort.
2026-08-06 11:10:12 +02:00
nella
c5d47334f4
Use toposort.
2026-08-06 10:51:49 +02:00
nella
3c536a06b7
Detect graph cycles and skip them.
2026-08-06 09:14:37 +02:00
Emil J
72ce1b63d7
Merge pull request #6090 from YosysHQ/emil/hierarchy-fix-keep-cache-again
...
hierarchy: fix keep cache usage by caching false too 2
2026-08-05 21:54:55 +00:00
Emil J. Tywoniak
253388a87f
hierarchy: fix cache usage by caching false too 2
2026-08-05 23:32:37 +02:00
Catherine
b89dc992e5
Revert "hierarchy: fix cache usage by caching false too"
...
This reverts commit ae14b5e6a8 .
2026-08-05 16:52:14 +00:00
nella
fae99416d4
Only init modwalker once.
2026-08-05 12:57:56 +02:00
nella
eff7e1f360
Budget SAT effort via shared SatEffortBudget.
2026-08-05 12:57:56 +02:00
nella
15d50d4fcf
Add help message + cleanup.
2026-08-05 12:57:56 +02:00
nella
2ee7dc5a1d
Implement constbit gather.
2026-08-05 12:57:56 +02:00
nella
c57f66cee7
eqbits drop_all.
2026-08-05 12:57:56 +02:00
nella
a9159ad435
Test solve_budgeted.
2026-08-05 12:57:56 +02:00
Emil J
468ba27d91
Merge pull request #6078 from YosysHQ/emil/hierarchy-fix-keep-cache
...
hierarchy: fix keep cache usage by caching false too
2026-08-03 15:54:50 +00:00
Emil J. Tywoniak
ae14b5e6a8
hierarchy: fix cache usage by caching false too
2026-08-03 14:55:03 +02:00
Lofty
5e6fcf3b36
cleanup
2026-08-03 13:28:33 +01:00
Emil J. Tywoniak
89a5cbbaa6
abc_ops_reintegrate: xaiger2 compatibility
2026-08-03 12:34:01 +01:00
Lofty
6d9f5d1b0c
wip
2026-08-03 12:34:01 +01:00
nella
abe32c86a0
Merge 'origin/main' into emil/muxpack-fix-chain.
2026-08-03 11:50:21 +02:00
Krystine Sherwin
2f8cf84882
alumacc: cmp_mergeable function
...
Replace all the existing mergeable checks with a call to a single function.
Fix remaining discrepencies (undersized output and mismatched signed inputs).
2026-07-31 16:59:57 +12:00
Krystine Sherwin and Lofty
bb49b0be32
alumacc: Fix get_lt for oversized output
...
Current behavior uses the output width to determine the MSb(s), however this is not correct if the output is larger than the inputs (which doesn't happen when creating an `$alu` for a compare op, but does when folding a compare op into an arithmetic `$alu`).
Co-authored-by: Lofty <[email protected] >
2026-07-31 16:59:56 +12:00
Emil J
c03bbc3309
Merge pull request #6069 from YosysHQ/emil/liberty-flop-fix-polarity
...
read_liberty: fix set&reset polarity
2026-07-30 15:34:24 +00:00
Emil J. Tywoniak
5f5f8b99b1
liberty: cleanup
2026-07-30 16:44:12 +02:00