Sean Luchen
307db1ec50
Add tests for #4976 .
2025-04-03 10:01:34 -07:00
Sean Luchen
bdcbbf2db6
Fix existing tests/liberty tests, and add them to Makefile.
2025-04-03 09:56:24 -07:00
George Rennie
63b3ce0c77
Merge pull request #4971 from Anhijkt/pow-optimization
...
opt_expr: optimize pow of 2 cells
2025-04-03 14:34:36 +02:00
Jannis Harder
0f13b55173
Liberty file caching with new libcache command
...
This adds optional in-memory caching of parsed liberty files to speed up
flows that repeatedly parse the same liberty files. To avoid increasing
the memory overhead by default, the caching is disabled by default. The
caching can be controlled globally or on a per path basis using the new
`libcache` command, which also allows purging cached data.
2025-04-03 13:39:35 +02:00
Jannis Harder
26a4b9b0c6
Merge pull request #4981 from jix/faster-liberty-lexing
...
Improve lexer performance for read_liberty
2025-04-03 13:32:33 +02:00
KrystalDelusion
1cfe1e2813
Merge pull request #4974 from YosysHQ/micko/config_exitcode
...
yosys-config: Propagate exit code for help command
2025-04-03 09:56:13 +13:00
Akash Levy
4bd08ac362
Merge branch 'YosysHQ:main' into main
2025-04-01 22:10:43 -07:00
github-actions[bot]
f03b44959b
Bump version
2025-04-02 00:23:07 +00:00
williamzhu17
58d903eee6
deleted old file
2025-04-01 17:19:04 -07:00
williamzhu17
776479d7aa
wip tests
2025-04-01 17:17:39 -07:00
Sean Luchen
4610889d27
Fix two parsing bugs that were causing private regression tests to fail.
...
These were introduced by 0a6d9f4 .
1) While in a paren "(", don't error on newline.
2) Don't parse an extra token when parsing vector ranges. Let the caller parse the next token as necessary.
2025-04-01 13:01:00 -07:00
Anhijkt
c57cbfa8f9
opt_expr: add test
2025-04-01 21:54:46 +03:00
williamzhu17
bc2d9d1f33
added deeper cases for gates
2025-04-01 11:10:50 -07:00
williamzhu17
2f9e6e08f0
added tests with constants
2025-04-01 10:39:33 -07:00
Anhijkt
6b5507139e
opt_expr: requsted changes
2025-04-01 20:37:22 +03:00
williamzhu17
8991707dee
zero indexed wires
2025-04-01 10:19:54 -07:00
williamzhu17
101f775b64
added extra test for muxes
2025-04-01 10:18:20 -07:00
williamzhu17
8f5f4ecab4
inital extract_reduce tests
2025-04-01 10:11:17 -07:00
williamzhu17
bbd132f6ba
updated extract_reduce to not consider xnors
2025-04-01 10:10:06 -07:00
Miodrag Milanović
402af3ece7
Merge pull request #4982 from YosysHQ/micko/verific_fix_restore
...
verific: fix restoring msg state after blackbox import
2025-04-01 18:32:08 +02:00
Miodrag Milanovic
72f2185a94
verific: fix restoring msg state after blackbox import
2025-04-01 17:35:59 +02:00
Jannis Harder
bc01468c75
read_liberty: Faster std::string construction in the liberty lexer
...
This extends the `LibertyInputStream` added in the previous commit to
allow arbitrary lookahead. Then this uses the lookahead to find the
total length of the token within the input buffer, instead of consuming
the token byte by byte while appending to a std::string. Constructing
the std::string with the total length is known avoids any reallocations
from growing std::string's buffer.
2025-04-01 14:12:12 +02:00
Jannis Harder
119e998f12
read_liberty: Faster input handling for the liberty lexer
...
The lexer for liberty files was using istream's `get` and `unget` which
are notorious for bad performance and that showed up during profiling.
This replaces the direct `istream` use with a custom LibertyInputStream
that does its own buffering to provide `get` and `unget` that behave the
same way but are implemented with a fast path that is easy to inline and
optimize.
2025-04-01 14:12:12 +02:00
Miodrag Milanovic
66d7ffb2c5
yosys-config: redirect to stderr/stdout depending of exit code
2025-04-01 08:39:11 +02:00
github-actions[bot]
c08f72b806
Bump version
2025-04-01 00:26:08 +00:00
Akash Levy
027a4cec13
Merge branch 'YosysHQ:main' into main
2025-03-31 14:07:26 -07:00
Akash Levy
d743a18ea3
Fix extract_reduce infinite loop
2025-03-31 12:36:43 -07:00
Emil J
3a1255546a
Merge pull request #4975 from YosysHQ/emil/opt_expr-cover-with-tests
...
opt_expr: expand test coverage
2025-03-31 20:13:16 +02:00
Sean Luchen
23f59e0196
Support array ranges for identifiers in the Liberty parser.
...
This change only handles the case `id : id[range] ;`.
2025-03-31 10:54:00 -07:00
Sean Luchen
ac1033ecd5
Factor parse_vector_range out into its own function.
...
This also fixes the parsing a bit. It was consuming 1 fewer token than
required.
2025-03-31 10:46:18 -07:00
Sean Luchen
0a6d9f4dc9
Factor report_unexpected_token out into its own function.
2025-03-31 10:44:23 -07:00
Emil J. Tywoniak
6194eb939d
opt_expr: expand test coverage
2025-03-31 19:31:53 +02:00
Miodrag Milanovic
58a515d57f
yosys-config: Propagate exit code for help command
2025-03-31 16:19:45 +02:00
Akash Levy
f488b0e74c
Add lut2bmux, annotate_unqcoef, and seed tests
2025-03-31 05:55:54 -07:00
Akash Levy
3f00e57076
Improve the naming for opt_reduce
2025-03-31 01:22:42 -07:00
Akash Levy
f72d27fae0
Robustness fixes
2025-03-30 22:23:21 -07:00
Akash Levy
984c6357ba
Add -word mode to lut2mux and improve the naming
2025-03-30 17:54:35 -07:00
Akash Levy
161ff0fa3f
Add muxmode pass and tests
2025-03-30 17:54:18 -07:00
Anhijkt
83b095ab6c
opt_expr: optimize pow of 2 cells
2025-03-30 15:43:41 +03:00
Akash Levy
dacd882383
Remove selectconst
2025-03-28 17:40:40 -07:00
github-actions[bot]
314842d2a0
Bump version
2025-03-29 00:22:03 +00:00
KrystalDelusion
80dc946499
Makefile: Test yosys git status in check-git-abc
...
As in #4986 , `check-git-abc` is misleading if Yosys itself isn't a git repository.
So check `git status` before suggesting `git` based solutions, providing alternative suggestions for using ABCEXTERNAL (which bypasses `check-git-abc`), or downloading release tar (noting that the 'Source code' archives won't work, which is probably how they ended up in this situtation).
2025-03-29 12:29:55 +13:00
Akash Levy
4d7581bc0b
Merge pull request #77 from williamzhu17/breaksop-tests
...
Added breaksop tests
2025-03-28 15:58:56 -07:00
williamzhu17
1628a22195
added extra test for multiple sops
2025-03-28 14:58:17 -07:00
Akash Levy
1a5415b5a2
Merge branch 'YosysHQ:main' into main
2025-03-28 14:56:36 -07:00
williamzhu17
a4a4544223
Merge branch 'breaksop-tests' of github.com:williamzhu17/yosys into breaksop-tests
2025-03-28 14:54:21 -07:00
williamzhu17
727c6a51be
added comment about one test case
2025-03-28 14:54:00 -07:00
William Zhu
ddb621d011
Merge branch 'Silimate:main' into breaksop-tests
2025-03-28 14:50:35 -07:00
williamzhu17
5987454eac
added breaksop-tests
2025-03-28 14:50:02 -07:00
Akash Levy
df8581a741
Merge pull request #76 from williamzhu17/breakreduce-tests
...
Add breakreduce Tests
2025-03-28 11:52:54 -07:00