3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2026-07-16 04:05:42 +00:00
Commit graph

242 commits

Author SHA1 Message Date
Akash Levy
139caf991c opt_compact_prefix: scope per-sweep clean to module, warn on non-convergence
Address review feedback on the fixpoint loop:
- Scope the per-sweep cleanup to the module under rewrite via
  Pass::call_on_module(..., "clean -purge") instead of running clean over
  the whole design selection. This avoids O(N^2) work across modules and
  keeps untouched modules' dangling cells until their own sweep, matching
  the original single-call behavior.
- Emit a log_warning if a module fails to reach a fixpoint within
  max_sweeps, so silent truncation of compaction is visible.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 23:52:30 -07:00
Akash Levy
da947b72d8 opt_compact_prefix fix 3 2026-06-24 22:40:21 -07:00
Mohamed Gaber
4db5fe5f6d
Merge remote-tracking branch 'silimate/main' into update_from_upstream 2026-06-19 00:07:08 +03:00
Akash Levy
fe9689eaaf Small update 2026-06-18 05:26:28 -07:00
Akash Levy
9df378f8ac opt_carry_select pass 2026-06-18 02:36:29 -07:00
Mohamed Gaber
a4042f69b1
passes/silimate: remove leftover Makefile.inc 2026-06-17 21:14:44 +03:00
Mohamed Gaber
8267cf87b5
infer_ce: remove pass 2026-06-17 21:01:20 +03:00
Mohamed Gaber
1d94aa6965
misc: fix unused variable in new main branch merge 2026-06-16 02:14:27 +03:00
Mohamed Gaber
569ab1231b
Merge remote-tracking branch 'silimate/main' into update_from_upstream 2026-06-16 02:02:41 +03:00
Akash Levy
23b021a26b Fix opt_compact_prefix wide packs and opt_priority_onehot max-width test
The tests/silimate suite (which aborted the Run tests CI job) exposed two
issues in the generalized passes:

- opt_compact_prefix: the forward dense pack regressions at 64 and 128 bits
  no longer rewrote. The ConstEval fingerprint was uint64_t-based (capped at
  62 bits) and the per-cone cell cap (max_width*96) was below the O(width^2)
  cell count of a wide pack. The fingerprint now drives whole-width Const
  bit patterns (no width cap) and the cone cap scales quadratically; total
  work stays bounded by the shared walk/eval budgets.

- opt_priority_onehot: the "max-width below lane count" negative test set
  max_width=8 on a 16-lane design expecting no rewrite, but the generalized
  matcher legitimately (and equivalence-provably) rewrites the 8-lane
  sub-region. The test now uses max_width=3 (below min_width 4) to verify
  the width gate suppresses all matching.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-15 12:02:09 -07:00
Akash Levy
1cc985314a Cleanup 2026-06-15 09:09:27 -07:00
Akash Levy
83baed6731 Generalize and refactor opt_* passes of Silimate 2026-06-12 16:31:41 -07:00
Mohamed Gaber
0217efb67d
Merge remote-tracking branch 'silimate/main' into update_from_upstream 2026-06-10 20:33:33 +03:00
Mohamed Gaber
d986ee91ac
CMake: integrate silimate additions and extensions
- update CMakeLists.txt to load two new files:
  - SilimateConfig.cmake: sets Silimate configuration options and defaults
  - SilimateVerific.cmake: compiles Verific library, optionally with Silimate modifications
- include silimate tests in test Makefile
2026-06-10 20:27:52 +03:00
Akash Levy
faea2d904a Make opt_compact_prefix match more 2026-06-09 10:55:10 -07:00
Akash Levy
30c510041a Fix opt_compact_prefix up 2026-06-09 00:34:13 -07:00
Akash Levy
28455c01e4 Support cell_footprint as indicator of stdcell 2026-06-04 00:40:38 -07:00
Stan Lee
09b2bdfb27 better comment 2026-06-02 15:45:52 -07:00
Stan Lee
96ee0f6ec5 Merge branch 'main' of github.com:silimate/yosys into annotate_ff_width 2026-06-02 15:20:18 -07:00
Stan Lee
6b7e5e2685 update annotate_ff_width pass 2026-06-02 15:17:55 -07:00
Akash Levy
c7b2c16405
Merge pull request #179 from Silimate/opt_compact_prefix
Add opt_compact_prefix pass
2026-06-02 02:14:37 -07:00
Akash Levy
24b75b65db Fix UB issue 2026-06-02 01:18:29 -07:00
Akash Levy
950cdf925c
Update passes/silimate/opt_compact_prefix.cc
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-06-02 01:15:18 -07:00
Akash Levy
a730032f5f Add opt_compact_prefix pass 2026-06-01 23:00:33 -07:00
Stan Lee
3d8f4999d6 selected cells and modules 2026-06-01 19:20:47 -07:00
Stan Lee
483b1536d7 update pass 2026-06-01 17:10:18 -07:00
Stan Lee
e3134c6692 annotate_ff_width pass 2026-06-01 16:35:30 -07:00
Akash Levy
d1ec970f86
Merge pull request #174 from Silimate/feat/fst_reuse
[ENG-2072] Rename reg_rename pass argument from -vcd to -waveform
2026-05-28 11:46:15 -07:00
Stan Lee
3d21f58f24 update comment 2026-05-28 01:22:59 -07:00
Stan Lee
e9873f822e bug fix 2026-05-27 23:47:38 -07:00
Chia-Hsiang Chang
9dc44b19b2 chore: rename argument name from --vcd to --waveform 2026-05-27 13:03:55 -07:00
Akash Levy
d3c5591647
Merge pull request #171 from Silimate/infer_icg
infer_icg pass
2026-05-27 01:06:40 -07:00
Akash Levy
2bb10837d9 infer_icg pass 2026-05-27 00:14:51 -07:00
Akash Levy
9e73dd6d27 ffnormpol pass 2026-05-27 00:13:05 -07:00
Akash Levy
f9261661c2 Reduce max_bits for opt_boundary 2026-05-12 01:30:38 -07:00
Akash Levy
b9fa4f85ba Ignore DW in opt_hier/opt_boundary 2026-05-04 12:52:47 -07:00
Akash Levy
ebf269bdf0 opt_boundary improvements and add to opt pass as option 2026-05-04 10:51:04 -07:00
Akash Levy
4b219f0ef6 Improvements 2026-05-01 22:50:43 -07:00
Akash Levy
7db8f29c04 opt_boundary 2026-05-01 19:57:00 -07:00
Stan Lee
386d3fc308 fix 2026-04-30 12:30:09 -07:00
Stan Lee
9d9ed4bfe3 flatten VCD/RTL scope hierarchy 2026-04-30 12:05:57 -07:00
Stan Lee
6aab520cad simplify 2026-04-30 10:14:42 -07:00
Stan Lee
21a2a1b4f8 splitcells was the issue? 2026-04-29 17:07:50 -07:00
Stan Lee
550d48c417 fix value conversion bug 2026-04-29 15:21:29 -07:00
Stan Lee
448ab2a4e7 undo 2026-04-29 11:30:04 -07:00
Stan Lee
3cd792d4d7 warn only on _reg 2026-04-29 11:24:46 -07:00
Stan Lee
8653fea875 fix 2026-04-20 09:45:07 -07:00
Stan Lee
9e05fb7606 comments 2026-04-20 09:40:40 -07:00
Stan Lee
3b7613d858 guard for multiple drivers 2026-04-19 21:30:12 -07:00
Stan Lee
d4bfebd0da offsets supported in reg_rename 2026-04-19 20:00:09 -07:00