3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-11-04 05:19:11 +00:00
Commit graph

16051 commits

Author SHA1 Message Date
Robert O'Callahan
bf732df591 Make new_id/new_id_suffix taking string_view to avoid allocating strings 2025-10-21 17:44:17 +00:00
Robert O'Callahan
5cc3f27a5f Remove StaticIdString and just use IdString now that we can make it constexpr 2025-10-21 17:44:17 +00:00
Robert O'Callahan
3c2caffffe Make IdString refcounts a hashtable containing only the nonzero refcounts
This saves space and doesn't cost very much since we hardly ever have nonzero refcounts any more.

It also allows for IdStrings with negative indexes, which we're going to add.
2025-10-21 17:44:17 +00:00
Robert O'Callahan
bc7895505e Implement IdString garbage collection instead of refcounting. 2025-10-21 17:44:15 +00:00
Robert O'Callahan
b3f79ed8e7 Create RTLIL::OwningIdString and use it in a few places 2025-10-21 17:40:52 +00:00
Robert O'Callahan
2ca7b2f7d7 Remove YOSYS_USE_STICKY_IDS 2025-10-21 17:40:52 +00:00
Robert O'Callahan
8b8939e219 Make RTLIL::Design::get_all_designs() unconditionally defined 2025-10-21 17:40:52 +00:00
Robert O'Callahan
3a4fa325cc Remove explicit empty-string check when looking up IdStrings 2025-10-21 17:40:52 +00:00
Robert O'Callahan
d70924ace2 Store IdString lengths and use them 2025-10-21 17:40:49 +00:00
Robert O'Callahan
ae219cb8f9 Make IdString::contains take std::string_view so we avoid a strlen when the parameter is a string constant 2025-10-21 17:37:46 +00:00
Robert O'Callahan
f7ac724ea9 Make IdString::begins_width/ends_with take std::string_view so we avoid a strlen when the parameter is a string constant 2025-10-21 17:37:46 +00:00
Jannis Harder
f6fb423ee8
Merge pull request #5430 from YosysHQ/micko/sim_cycle_width
sim: Make cycle width small as possible and configurable
2025-10-20 18:51:32 +02:00
Jannis Harder
6a0ee6e4fb Revert sim's cycle_width default back to 10, but keep -width option 2025-10-20 14:40:05 +02:00
github-actions[bot]
1598771a37 Bump version 2025-10-19 00:26:17 +00:00
Mohamed Gaber
b510c36162 hotfix: headers mistakenly added to clean target
- fix `make clean` deleting a number of headers when ENABLE_PYOSYS is set to 1
2025-10-18 14:08:20 +01:00
github-actions[bot]
272aa9cde2 Bump version 2025-10-17 00:23:40 +00:00
Maxim Kudinov
6535995005 synth_gowin: fix help hint style 2025-10-16 11:09:28 +01:00
Maxim Kudinov
8c347826f6 synth_gowin: make help description more clear 2025-10-16 11:09:28 +01:00
Maxim Kudinov
8f6d63c082 synth_gowin: make setundef an off by default option 2025-10-16 11:09:28 +01:00
Miodrag Milanovic
f11a61b32b sim: Make cycle width small as possible and configurable 2025-10-16 11:37:44 +02:00
Miodrag Milanovic
db8c1878a0 fix dlopen using fs:path with mingw 2025-10-16 08:30:43 +02:00
github-actions[bot]
061b6ce2ad Bump version 2025-10-16 00:23:57 +00:00
Miodrag Milanović
759996b968
Merge pull request #5427 from donn/plugin_search_paths
plugins: add search paths
2025-10-15 20:02:05 +02:00
Emil J
9d21585a4c
Merge pull request #5426 from rocallahan/parse-sigspec
Don't stop parsing sigspec after a {} group.
2025-10-15 17:31:11 +02:00
Mohamed Gaber
dce70abd94
plugins: support Windows path delimiters 2025-10-15 15:53:44 +03:00
Mohamed Gaber
e86797f029
plugins: add search path
This uses the environment variable `YOSYS_PLUGIN_PATH` to provide multiple colon-delimited search paths for native plugins in a similar manner to `PATH` for executables and `PYTHONPATH` for Python modules.

This addresses https://github.com/YosysHQ/yosys/issues/2545, allowing Yosys to be better packaged in non-FHS environments such as Nix.
2025-10-15 14:13:25 +03:00
github-actions[bot]
4970ad5a18 Bump version 2025-10-15 00:23:49 +00:00
Robert O'Callahan
e099a7d34a Don't stop parsing sigspec after a {} group.
Resolves #5424
2025-10-14 21:18:58 +00:00
Miodrag Milanović
2e3bfca294
Merge pull request #5419 from YosysHQ/micko/verific_fix_nocolumns
verific: Fix error compiling without VERIFIC_LINEFILE_INCLUDES_COLUMNS
2025-10-14 17:05:31 +02:00
Miodrag Milanović
a89c5b97d8
Merge pull request #5423 from YosysHQ/update_abc
Update abc
2025-10-14 17:05:13 +02:00
Emil J
a5960ce515
Merge pull request #5197 from YosysHQ/emil/opensta-verilog-export
OpenSTA verilog compatibility
2025-10-14 16:46:37 +02:00
Miodrag Milanovic
7d2857b30f Fix regex checks 2025-10-14 16:04:56 +02:00
N. Engelhardt
4513783a02 add tests 2025-10-14 15:48:16 +02:00
Emil J. Tywoniak
e9aedf505c chtype: replace publish pass with chtype -publish_icells 2025-10-14 15:01:48 +02:00
Miodrag Milanovic
d92cf2f5b0 Compile abc when submodule updates 2025-10-14 14:54:56 +02:00
Miodrag Milanovic
d3d3a9f1ea Update ABC 2025-10-14 14:47:17 +02:00
Emil J
109abd3224
Merge pull request #5421 from YosysHQ/emil/sort-pass
sort: init
2025-10-14 10:51:25 +02:00
github-actions[bot]
25f2a88770 Bump version 2025-10-14 00:22:29 +00:00
Emil J. Tywoniak
e5edd2acdb sort: init 2025-10-13 17:32:26 +02:00
Emil J
71eadc9ab5
Merge pull request #5418 from yrabbit/gw5-dff-and-memory
Gowin. Reduce the range of flip-flop types.
2025-10-13 17:26:56 +02:00
Emil J. Tywoniak
c46df9ffdc box_derive: rename -apply to -apply_derived_type 2025-10-13 17:24:32 +02:00
Emil J. Tywoniak
d7cea2c35c box_derive: add -apply 2025-10-13 17:24:32 +02:00
Emil J. Tywoniak
7d8f92e198 publish: add pass for renaming private cell types to public 2025-10-13 17:24:32 +02:00
Jannis Harder
84b5ec856e
Merge pull request #4320 from YosysHQ/ywb_asserts
write_btor: Include `$assert` and `$assume` cells in -ywmap output
2025-10-13 15:30:11 +02:00
Miodrag Milanovic
1f11b2c529 verific: Add src to message missed in #5406 2025-10-13 15:16:17 +02:00
Miodrag Milanovic
dc959cdf4a verific: Fix error compiling without VERIFIC_LINEFILE_INCLUDES_COLUMNS 2025-10-13 15:16:17 +02:00
Miodrag Milanovic
9570b39519 verifix: fix bits() deprecation warnings 2025-10-13 09:57:22 +02:00
Miodrag Milanovic
2f8f421dee verifix: fix bits() deprecation warnings 2025-10-13 09:47:18 +02:00
YRabbit
02e40e8118 Gowin. Reduce the range of flip-flop types.
UG303-1.0E_Arora Ⅴ Configurable Function Unit (CFU) User Guide.pdf
specifies that the only flip-flop types supported in GW5 are DFFSE,
DFFRE, DFFPE, and DFFCE.

However, the bit streams generated by the vendor IDE also contain DFF
flip-flops, which are probably the result of optimisation, so we leave
them in the list of permitted items, but add a flag that will allow the
generation of completely correct output files, acceptable for further P&
R using vendor tools (they will not allow the use of flip-flops other
than the four specified in the netlist).

In the GW5 SemiDual Port BSRAM series, the primitive does not have
RESETA and RESETB ports—they are replaced by the RESET port, so we
separate the files for BSRAM generation, especially since in the future
we may have to take into account other, as yet unexplored, differences
in BSRAM.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2025-10-11 21:12:35 +10:00
Emil J
9a12d92551
Merge pull request #5386 from YosysHQ/emil/liberty-glob-all
Expand wildcards in Liberty file consumers
2025-10-09 20:21:48 +02:00