Commit Graph

16354 Commits

Author SHA1 Message Date
Emil J 46fbed6e6f
Merge pull request #5525 from YosysHQ/emil/fix-xaiger2-empty-cell-input
aiger2: fix empty cell input
2025-12-04 16:47:53 +01:00
github-actions[bot] 52b1245547 Bump version 2025-12-04 00:25:21 +00:00
Miodrag Milanovic 58c7dc7cc2 Next dev cycle 2025-12-03 07:23:34 +01:00
Miodrag Milanovic 5bafeb77dc Release version 0.60 2025-12-03 07:19:42 +01:00
Gus Smith 07a690570e
Merge pull request #5128 from gussmith23/gussmith23-rosette-backend-updates
Add association-list-based helper functions into Rosette backend
2025-12-02 16:27:05 -08:00
Gus Smith dd65dd610d Fixes 2025-12-02 11:17:21 -08:00
Emil J. Tywoniak 36f0e0392f aiger2: add crash test 2025-12-02 15:30:02 +01:00
Emil J 9871e9b17e
Merge pull request #5496 from YosysHQ/emil/liberty-flop-loops
read_liberty: support loopy retention cells
2025-12-01 22:50:20 +01:00
Emil J. Tywoniak b2270ae1c8 aiger2: fix case where submodule cell input port has empty SigSpec 2025-12-01 19:40:58 +01:00
Emil J. Tywoniak cebb80250c aiger2: formatting 2025-12-01 19:40:17 +01:00
Gus Smith 38ee4fc730 Undo more unnecessary changes 2025-11-29 16:17:27 -08:00
Gus Smith 62e666c2ed Make run-test work from anywhere 2025-11-29 16:08:42 -08:00
Gus Smith fb8a1ad3bc Add back param 2025-11-29 16:07:18 -08:00
Gus Smith 0f8e1e3bf7 Undo more changes 2025-11-29 16:06:18 -08:00
Gus Smith 5f84b8b339 Undo some other changes 2025-11-29 15:32:19 -08:00
Gus Smith e223087578 Undo more changes that slipped in from somewhere? a merge maybe? 2025-11-29 15:28:34 -08:00
Gus Smith ade6379345 Explicitly store whether to use association lists
Instead of checking for the presence of helper names each time we need to
determine whether to use association lists, explicitly store a boolean flag
indicating whether association list helpers are being used.
2025-11-29 15:24:56 -08:00
Gus Smith ddcd93024f Capture error case more correctly 2025-11-29 15:20:37 -08:00
Gus Smith 5d5a7ab443 remove unused 2025-11-29 15:08:57 -08:00
Gus Smith 473edd19ed Undo formatting 2025-11-29 15:06:46 -08:00
Gus Smith 403740428c Remove unknown change 2025-11-29 15:01:17 -08:00
Gus Smith ded7c9cb03 More formatting undos' 2025-11-29 14:59:04 -08:00
Gus Smith 9909049d2a Undo formatting changes 2025-11-29 14:55:55 -08:00
Gus Smith d603b7bb58 Update ABC 2025-11-29 14:23:51 -08:00
Gus Smith 6fe35fa46c Merge remote-tracking branch 'origin/main' into gussmith23-rosette-backend-updates 2025-11-29 14:20:36 -08:00
KrystalDelusion 34fa8a4ff7
Merge pull request #3516 from dehekkendekrekker/subcircuit_fix
Fixes #3515
2025-11-29 12:51:15 +13:00
Emil J 9525f79d61
Merge pull request #5514 from rocallahan/idstring-safety
Make `IdString` thread-safe for read-only access
2025-11-28 23:58:33 +01:00
github-actions[bot] e4044e1b4a Bump version 2025-11-27 00:24:24 +00:00
Miodrag Milanović c43246bba5
Merge pull request #5517 from povik/static
Add static library option
2025-11-26 16:11:37 +01:00
Martin Povišer c1e40e113c Use `$(AR)` 2025-11-26 13:02:44 +01:00
Martin Povišer 7cb3a0f830 Add static library option 2025-11-26 12:34:37 +01:00
github-actions[bot] 752d24c0a8 Bump version 2025-11-26 00:24:41 +00:00
Robert O'Callahan b23dc345ae Make it safe to access .c_str() for autoidx IDs in a multithreaded context 2025-11-25 22:49:41 +00:00
Robert O'Callahan 948001f39f Merge the two autoidx hashtables into one
When something calls `IdString::c_str()` on an autoidx ID, we need to cache the
full string in a thread-safe way. If we need to allocate an entry in some data
structure to do that, it's difficult to do in a thread-safe no-performance-hazard way.
So instead, store the cached string pointer in the same hashtable as the prefix
pointer.
2025-11-25 21:57:46 +00:00
Robert O'Callahan 8f0ecce53f Forbid creating IdStrings and incrementing autoidx during multithreaded phases, and add dynamic checks for that
We could make it safe to increment autoidx during multithreaded passes, but that's
actually undesirable because it would lead to nondeterminism. If/when we need new
IDs during parallel passes, we'll have to figure out how to allocate them in a
deterministic way, and that will depend on the details of what the pass does.
So don't try to tackle that now.
2025-11-25 21:57:46 +00:00
Robert O'Callahan 4c8b537d71 Remove YOSYS_NO_IDS_REFCNT
Refcounting is hardly used at all so this option is not that useful.

We might want to have a different option that disables GC if that becomes
a performance issue, but that should be a different option.
2025-11-25 21:57:46 +00:00
Robert O'Callahan 7f9de6e48f Make coverage data thread-safe 2025-11-25 21:46:48 +00:00
Miodrag Milanović 10fd97821e
Merge pull request #5511 from YosysHQ/update_abc
Update ABC as per 2025-11-24
2025-11-25 14:56:28 +01:00
Miodrag Milanovic cae020a581 Update ABC as per 2025-11-24 2025-11-25 11:29:48 +01:00
github-actions[bot] 5d3599a78c Bump version 2025-11-25 00:23:19 +00:00
Krystine Sherwin a8e8746fc0
tests: Tidy up bug3515
Add base case where mapping is possible for sanity checking.
2025-11-25 07:35:19 +13:00
Krystine Sherwin ba31a02578
tests: Add bug3515 2025-11-25 07:04:34 +13:00
De hekkende krekker 38a1e66145
Fixes #3515 2025-11-25 06:58:14 +13:00
Emil J 510f9ef63d
Merge pull request #5499 from mikesinouye/abc_new
Enable abc_new pass when not in NDEBUG
2025-11-24 16:57:29 +01:00
Emil J. Tywoniak e8cbc92462 abc_new: sorted -> is_sorted 2025-11-24 11:46:09 +01:00
Emil J faa1e8fac4
Merge pull request #5500 from mikesinouye/xaiger2
Enable xaiger2 pass when not in NDEBUG
2025-11-24 11:44:36 +01:00
Miodrag Milanović 0d954f2f4c
Merge pull request #5498 from YosysHQ/krys/check_enable_abc
Check ENABLE_ABC validity
2025-11-24 08:09:45 +01:00
Miodrag Milanović d550757b4e
Merge pull request #5501 from rocallahan/tcl-size
Use `Tcl_Size` instead of `int` to fix build errors
2025-11-24 08:07:00 +01:00
Robert O'Callahan 53614a37a1 Use `Tcl_Size` instead of `int` to fix build errors
Fixes these build errors I'm getting locally with `tcl-devel-9.0.0-7.fc42.x86_64`.
I guess Tcl 9 broke this.

```
passes/cmds/sdc/sdc.cc:438:6: error: no matching function for call to 'Tcl_ListObjLength'
  438 |         if (Tcl_ListObjLength(interp, listObj, &listLength) == TCL_OK) {
      |             ^~~~~~~~~~~~~~~~~
/usr/include/tclDecls.h:1788:13: note: candidate function not viable: no known conversion from 'int *' to 'Tcl_Size *' (aka 'long *') for 3rd argument
 1788 | EXTERN int              Tcl_ListObjLength(Tcl_Interp *interp,
      |                         ^
 1789 |                                 Tcl_Obj *listPtr, Tcl_Size *lengthPtr);
      |                                                   ~~~~~~~~~~~~~~~~~~~
passes/cmds/sdc/sdc.cc:446:8: error: no matching function for call to 'Tcl_ListObjLength'
  446 |                         if (Tcl_ListObjLength(interp, subListObj, &subListLength) == TCL_OK) {
      |                             ^~~~~~~~~~~~~~~~~
/usr/include/tclDecls.h:1788:13: note: candidate function not viable: no known conversion from 'int *' to 'Tcl_Size *' (aka 'long *') for 3rd argument
 1788 | EXTERN int              Tcl_ListObjLength(Tcl_Interp *interp,
      |                         ^
 1789 |                                 Tcl_Obj *listPtr, Tcl_Size *lengthPtr);
      |                                                   ~~~~~~~~~~~~~~~~~~~
```
2025-11-24 18:46:56 +13:00
github-actions[bot] 33a49452d9 Bump version 2025-11-22 00:23:19 +00:00