Emil J. Tywoniak
79acc141d5
hashlib: add deprecated mkhash function to prevent plugin breakage
2024-12-18 14:58:53 +01:00
Emil J. Tywoniak
ad0dc17711
docs: document the ideas behind the hashing interface
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
0dafe06cd4
hashlib: run_hash uses hash_top_ops, not hash_ops
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
02a578365a
hashlib: remove is_new from HasherDJB32, implement hash_top for IdString
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
704a58ab21
hashlib: restore hash_obj_ops for pointers to indexed types
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
52b0fc03b7
hash: solo hashing interface, override for SigBit
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
b7991ed1f5
hashlib: prevent naive hashing of IdString when hashing SigBit
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
4d14399749
hashlib: allow forcing Hasher state, use it for IdString trivial hashing
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
c1af19fabc
hashlib: don't xorshift in between upper and lower word
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
209ab6fb72
hashlib: fudge always
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
582259f770
hashlib: hash_t can be set to 64-bit
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
b8738e2bd7
hashlib: use hash_t across the board
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
c73c88033d
hashlib: only include in one place
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
db04788c18
hashlib: fix pyosys
2024-12-18 14:58:31 +01:00
Emil J. Tywoniak
953508f6d2
driver: add --hash-seed
2024-12-18 14:58:29 +01:00
Emil J. Tywoniak
d071489ab1
hashlib: redo interface for flexibility
2024-12-18 14:49:25 +01:00
Akash Levy
1eee11846e
Resolve reg naming to some extent
2024-12-17 12:11:39 -08:00
Akash Levy
0757e27683
Raise SIGABRT when assert fails
2024-12-17 09:58:54 -08:00
Akash Levy
dda4d9afce
Use basename for filename in id
2024-12-13 13:32:34 -08:00
Akash Levy
caaef5ac14
Merge branch 'YosysHQ:main' into main
2024-12-11 12:00:34 -08:00
Martin Povišer
1f718e3ab6
kernel: Remove global `tcl.h` include
...
In commit ac988cf we made sure to undefine the CONST/VOID macros left
defined by `tcl.h`, but this in turn makes it an issue to include
additional Tcl headers later on (see issue #4808 ).
One way out is to avoid a global `tcl.h` include. In the process we drop
support for Tcl-enabled MXE builds, which were likely broken anyway due
to the additional Tcl APIs used from `tclapi.cc`.
2024-12-10 13:49:08 +01:00
Akash Levy
d8fcc36f65
Smallfix
2024-12-09 19:09:29 -08:00
Akash Levy
78ceb23022
Use tcl.h instead
2024-12-09 17:32:25 -08:00
Akash Levy
1d0570a52c
Small tclapi fix
2024-12-09 16:46:06 -08:00
Akash Levy
2c5811daa1
Fix warnings
2024-12-09 11:45:09 -08:00
Akash Levy
e0ba08dd1d
Merge branch 'YosysHQ:main' into main
2024-12-09 11:13:47 -08:00
Martin Povišer
b0708a38bf
Merge pull request #4678 from povik/tcl-rtlil-api
...
Start Tcl design inspection methods
2024-12-09 15:44:58 +01:00
Akash Levy
8bb193d7c5
Merge branch 'YosysHQ:main' into main
2024-12-08 15:44:46 -08:00
N. Engelhardt
2a744b4b82
add hash method to scopeindex cursor
2024-12-06 11:18:39 +01:00
Alain Dargelas
fbf7734420
Excluded lbfd from MacOs build
2024-12-05 14:30:34 -08:00
Alain Dargelas
0e82550429
Support for backtrace
2024-12-05 13:29:27 -08:00
Akash Levy
4356eae4c9
Yosys sync
2024-12-04 14:16:55 -08:00
Krystine Sherwin
9925b27432
Goodbye guidelines (except GettingStarted)
...
Drop the parts that are being dropped.
Move the things that are being moved.
Also move the verilog stuff out of README and into the docs.
GettingStarted is less cut and dry, so hold off on that one.
2024-12-05 09:21:12 +13:00
Krystine Sherwin
f0da1cc67f
Start removing guidelines folder
...
Disable the export to docs and remove any references to the guidelines folder.
2024-12-05 09:18:56 +13:00
KrystalDelusion
c61b2bc1bc
Merge pull request #4794 from YosysHQ/krys/cygwin_compat
...
Fix Cygwin compatibility
2024-12-05 09:16:18 +13:00
KrystalDelusion
c96d02b204
Merge pull request #4784 from YosysHQ/krys/reduce_warnings
...
Reduce number of warnings
2024-12-05 09:16:06 +13:00
Emil J
d78086480f
Merge pull request #4770 from YosysHQ/emil/autoidx-option
...
driver: add --autoidx
2024-12-04 16:43:40 +01:00
Jannis Harder
81de54f436
tclapi: Remove unused -bool flag from get_param and document -[su]int
2024-12-03 18:59:52 +01:00
Jannis Harder
cac6dd9bcb
tclapi: Use older bignum API and handle external tommath for mac os
2024-12-03 18:49:38 +01:00
Krystine Sherwin
7d8140ddea
kernel/mem: Fix Cygwin compat
...
Avoid error:
```
kernel/mem.cc:1683:7: error: conflicting declaration ‘using addr_t = using addr_t = uint32_t’
1683 | using addr_t = MemContents::addr_t;
| ^~~~~~
In file included from /usr/include/sys/types.h:222,
from /usr/include/pthread.h:11,
from /usr/lib/gcc/x86_64-pc-cygwin/12/include/c++/x86_64-pc-cygwin/bits/gthr-default.h:35,
from /usr/lib/gcc/x86_64-pc-cygwin/12/include/c++/x86_64-pc-cygwin/bits/gthr.h:148,
from /usr/lib/gcc/x86_64-pc-cygwin/12/include/c++/ext/atomicity.h:35,
from /usr/lib/gcc/x86_64-pc-cygwin/12/include/c++/bits/cow_string.h:37,
from /usr/lib/gcc/x86_64-pc-cygwin/12/include/c++/bits/basic_string.h:51,
from /usr/lib/gcc/x86_64-pc-cygwin/12/include/c++/string:53,
from ./kernel/yosys_common.h:27,
from ./kernel/yosys.h:42,
from ./kernel/mem.h:23,
from kernel/mem.cc:20:
/usr/include/machine/types.h:63:15: note: previous declaration as ‘typedef char* addr_t’
63 | typedef char *addr_t;
```
According to IntelliSense, only the return types need to be prefixed with `MemContents::`, the rest are automagically using the class definition and highlight as `using Yosys::MemContents::addr_t = uint32_t`.
2024-12-03 13:15:33 +13:00
Martin Povišer
f0704b6ede
Redo integer passing on top of bignum
2024-12-02 19:56:51 +01:00
Akash Levy
6e88c689f2
Merge branch 'YosysHQ:main' into main
2024-12-01 12:32:07 -05:00
Martin Povišer
1ded817beb
booth: Map simple `$macc` instances too
2024-12-01 16:00:04 +01:00
Krystine Sherwin
1de5d98ae2
Reduce comparisons of size_t and int
...
`Const::size()` returns int, so change iterators that use it to `auto` instead of `size_t`.
For cases where size is being explicitly cast to `int`, use the wrapper that we already have instead: `Yosys::GetSize()`.
2024-11-29 12:53:29 +13:00
Martin Povišer
646c5a19a8
Merge pull request #4776 from YosysHQ/krys/get_blackbox_attribute
...
Move get_blackbox_attribute method to Module instead of AttrObject
2024-11-28 00:25:16 +01:00
Martin Povišer
1717a0b9c0
Merge pull request #4721 from ldoolitt/main
...
kernel/drivertools.h: avoid maybe-uninitialized compile warnings
2024-11-28 00:09:43 +01:00
KrystalDelusion
f428163252
Move get_blackbox_attribute method to Module instead of AttrObject
2024-11-28 11:19:16 +13:00
Emil J. Tywoniak
65146e3acf
driver: add --autoidx
2024-11-26 12:11:10 +01:00
Akash Levy
52a1493548
Naming improvements
2024-11-21 03:29:35 -08:00
Akash Levy
bbbc292209
Smallfixes
2024-11-20 21:10:58 -08:00
Akash Levy
08ff023510
Naming fix for ff.cc
2024-11-20 20:59:04 -08:00
Akash Levy
1a69c51c88
Merge branch 'YosysHQ:main' into main
2024-11-18 16:10:30 -08:00
Martin Povišer
270846a49a
Merge pull request #4723 from povik/memv2-nordports
...
rtlil: Adjust internal check for `$mem_v2` cells
2024-11-18 15:44:39 +01:00
Martin Povišer
1cb5fd08b7
Merge pull request #4682 from povik/read_liberty-extensions
...
read_liberty extensions
2024-11-18 14:42:18 +01:00
Akash Levy
cb1640b873
Need this too
2024-11-16 21:55:54 -08:00
Akash Levy
6be73e5c2e
Updates
2024-11-15 19:02:06 -08:00
Martin Povišer
2dba345049
portarcs: New command to derive propagation arcs
2024-11-13 16:20:35 +01:00
Martin Povišer
4ce8c7a0d3
Merge pull request #4709 from YosysHQ/emil/idstring-in-fold
...
functional, glift: use fold overload of IdString::in instead of pool …
2024-11-13 15:17:33 +01:00
Martin Povišer
c7e8d41600
read_liberty: Set `area` `capacitance` attributes
2024-11-12 13:26:38 +01:00
Akash Levy
9f9bacc029
Fixes
2024-11-12 03:44:22 -08:00
Akash Levy
771e5c9996
Fix mem
2024-11-12 00:59:05 -08:00
Akash Levy
894c9816d3
Improve naming: big fix
2024-11-11 17:06:11 -08:00
Akash Levy
ea76abdaee
Merge
2024-11-11 11:47:58 -08:00
Robin Ole Heinemann
8bc4bd8a20
cxxrtl, fmt: escape double quotes in c strings
2024-11-11 18:49:05 +00:00
Larry Doolittle
3ae9ca7c2b
drivertools.h: switch from log_assert(0) to log_abort() for new feature
2024-11-08 10:30:11 -08:00
Martin Povišer
e82e5f8b13
rtlil: Adjust internal check for `$mem_v2` cells
...
There's a mismatch between what `kernel/mem.cc` emits for memories
with no read ports and what the internal RTLIL check expects.
The point of dispute it whether some of the parameters relating to read
ports have a zero-width value in this case. The `mem.cc` code says no,
the internal checker says yes.
Surveying the other `$mem_v2` parameters, and internal cell parameters
in general, I am inclined to side with the `mem.cc` code.
This breaks RTLIL compatibility but for an obscure edge case.
2024-11-08 15:18:43 +01:00
Larry Doolittle
d36a387aca
kernel/drivertools.h: avoid maybe-uninitialized compile warnings
...
Initialize "unsigned int inner" in hash() functions
Includes a log_assert() that might help catch corrupted data structures
or future incomplete modification of DriveType definition
2024-11-07 19:49:25 -08:00
Alain Dargelas
43186b2c7a
Returning unsigned int
2024-11-06 16:39:58 -08:00
Alain Dargelas
3ad51e06bc
Using Yosys hash
2024-11-06 16:32:18 -08:00
Alain Dargelas
39c2d7aa60
RTLIL Module dump and hash
2024-11-06 15:48:24 -08:00
Akash Levy
37914ff129
Merge branch 'YosysHQ:main' into main
2024-11-06 14:14:08 -08:00
N. Engelhardt
2de9f00368
Merge pull request #4620 from RCoeurjoly/fix-vcd-parsing-ghdl-var-spacing
2024-11-06 16:29:07 +01:00
N. Engelhardt
9068ec5566
Merge pull request #4627 from RCoeurjoly/roland/assume_x
2024-11-06 16:27:30 +01:00
Emil J. Tywoniak
387a235158
functional, glift: use fold overload of IdString::in instead of pool literals
2024-11-06 12:48:32 +01:00
Akash Levy
1cba744712
Update
2024-11-04 17:01:41 -08:00
Martin Povišer
cba9460cba
Split off Tcl APIs into `tclapi.cc`
2024-11-04 16:17:02 +01:00
Emil J
b2d78589e2
Merge pull request #4675 from YosysHQ/emil/pyosys-fix-segfault
...
yosys: fix pyosys initialization segfault
2024-11-01 16:40:58 +01:00
Akash Levy
d63c793e72
Merge branch 'YosysHQ:main' into main
2024-10-28 11:24:55 -07:00
Lofty
dd7ea0ab6c
qwp: remove
2024-10-25 14:09:58 +01:00
Akash Levy
7864c6dd34
vector fix for pyosys
2024-10-24 23:12:54 -07:00
Akash Levy
9ba609a7b0
Merge branch 'YosysHQ:main' into main
2024-10-21 16:28:19 -07:00
Emil J
7db4c65970
Merge pull request #4672 from YosysHQ/emil/fix-tcl-args-cxxopts
...
driver: fix special args passing to tcl and python
2024-10-21 15:41:24 +02:00
Martin Povišer
ccd98d21c1
Start Tcl design inspection methods
2024-10-21 13:32:03 +02:00
Akash Levy
0ddf964554
Merge branch 'YosysHQ:main' into main
2024-10-18 05:33:40 -07:00
Emil J. Tywoniak
37e61b993a
yosys: fix pyosys initialization segfault
2024-10-18 11:56:13 +02:00
Emil J
799497ebba
Merge pull request #4671 from YosysHQ/emil/const-deref-pyosys
...
py_wrap: implement nested class definitions
2024-10-18 11:46:12 +02:00
Emil J. Tywoniak
49d8a35c2e
rtlil: appease py_wrap
2024-10-18 11:31:20 +02:00
Akash Levy
6d4d6a6eff
Merge branch 'YosysHQ:main' into main
2024-10-17 10:26:17 -07:00
Emil J. Tywoniak
0341265e64
driver: fix special args passing to tcl and python
2024-10-16 23:56:45 +02:00
Emil J. Tywoniak
e9e67f381c
rtlil: remove trailing comma as pyosys workaround
2024-10-16 23:15:06 +02:00
Akash Levy
711e1f3164
Merge branch 'YosysHQ:main' into main
2024-10-16 13:21:03 -07:00
Krystine Sherwin
4ea6119734
cmdref: Move html only section inside cmd:def
...
Fixes missing links in body and `??` in tag/command index.
Update synth.rst to match.
2024-10-17 06:06:57 +13:00
alaindargelas
5019bd826d
Revert "auto name change until openSTA signal name parsing is fixed"
2024-10-15 18:36:37 -07:00
Akash Levy
1be0a50185
Fix comma that pyosys hates
2024-10-15 03:20:54 -07:00
Alain Dargelas
ecb9d3703b
auto name change until openSTA signal name parsing is fixed
2024-10-14 21:14:45 -07:00
Krystine Sherwin
b1025dbaa6
cellhelp.py: Cells can have tags
...
Tags are added to the list of properties when exporting to `cells.json`.
2024-10-15 07:35:41 +13:00
Krystine Sherwin
04b0ae540d
cellref: Move default help message to register.cc
...
Drop the default help message from rst while still displaying it on the command line.
Fix command line formatting for older style help messages.
2024-10-15 07:31:47 +13:00
Krystine Sherwin
b127ac07f8
Docs: Preliminary autocellgroup usage
...
Remove `/source/cell` from .gitignore.
Add a few initial cell pages.
Add YosysCellGroup documenter and cell:group directive.
Update Documenters to use nested json.
Better nested tocs for group.module.source layout.
2024-10-15 07:26:04 +13:00
Krystine Sherwin
7c5b10fe50
cellref: Add json dump
...
New `help -dump-cells-json <file>` to dump cells list.
Add 'group' field to SimHelper class/struct with defaults to gate_other and word_other depending on source (simcells or simlib).
Add 'unary' group to unary operator cells for testing (based on internal cell library docs page).
2024-10-15 07:25:27 +13:00
Krystine Sherwin
063a6bc2d7
register.cc: Include properties in docs
2024-10-15 07:23:45 +13:00