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

190 commits

Author SHA1 Message Date
Akash Levy
881080a827 Merge upstream 2025-03-05 07:54:26 -08:00
Akash Levy
9d3b7f7474
Merge branch 'YosysHQ:main' into main 2025-02-26 09:51:44 -08:00
Emil J. Tywoniak
78cb10da69 improve mkdtemp error message 2025-02-26 12:06:54 +01:00
Akash Levy
08d33330c4 Flush log after every pass automatically 2025-02-24 23:19:18 -08:00
Akash Levy
bd439fc524 Reapply "Merge upstream"
This reverts commit e73d51dbf0.
2025-01-23 13:40:32 -08:00
Akash Levy
e73d51dbf0 Revert "Merge upstream"
This reverts commit c58a50f880, reversing
changes made to a1c3c98773.
2025-01-21 05:28:36 -08:00
Akash Levy
c58a50f880 Merge upstream 2025-01-21 04:36:34 -08:00
Miodrag Milanovic
d50849ea83 Copyright year update 2025-01-21 08:48:29 +01:00
Akash Levy
737e95d3e9 Move signal outside Py_IsInitialized 2025-01-10 11:52:10 -08:00
Akash Levy
1dcf75d175 Sync 2024-12-19 21:40:30 -08:00
Emil J. Tywoniak
953508f6d2 driver: add --hash-seed 2024-12-18 14:58:29 +01: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
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
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
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
Martin Povišer
ccd98d21c1 Start Tcl design inspection methods 2024-10-21 13:32:03 +02:00
Emil J. Tywoniak
37e61b993a yosys: fix pyosys initialization segfault 2024-10-18 11:56:13 +02:00
alaindargelas
5019bd826d
Revert "auto name change until openSTA signal name parsing is fixed" 2024-10-15 18:36:37 -07:00
Alain Dargelas
ecb9d3703b auto name change until openSTA signal name parsing is fixed 2024-10-14 21:14:45 -07:00
Akash Levy
6725f2d646 Move init_share_dirname to after Python is initialized 2024-10-10 13:34:39 -07:00
Akash Levy
0ac341acf2 Merge latest and update yosys-slang dep 2024-10-09 15:34:02 -07:00
Mohamed Gaber
3d6b8b8e1a
wheels: fix missing yosys-abc/share directory
* `misc/__init__.py`:
  * checks if there's a `yosys-abc` in the same directory - if yes, sets the variable `sys._pyosys_abc`
  * checks if there's a `share` in the same directory - if yes, sets the variable `sys._pyosys_share_dirname`
* `yosys.cc::init_share_dirname`: check for `sys._pyosys_share_dirname`, use it at the highest priority if Python is enabled
* `yosys.cc::init_abc_executable_name`: check for `sys._pyosys_abc`, use it at at the highest priority if Python is enabled
* `Makefile`: add new target, `share`, to only create the extra targets
* `setup.py`: compile libyosys.so, yosys-abc and share, and copy them all as part of the pyosys build
* `test/arch/ecp5/add_sub.py`: ported `add_sub.ys` to Python to act as a test for the share directory and abc with Python wheels, used in CI
2024-10-09 13:09:14 +03:00
Mohamed Gaber
407343a7a1
Pyosys Wheels
* Created `setup.py`: Python package manifest to build `pyosys` wheels with a custom extension to build and include `libyosys.so` using Make
* `.gitignore`: Added byproducts of the Python wheel build process
* `Makefile`: Added `-undefined dynamic_lookup` to `libyosys.so` so missing symbols can be resolved by importing into a Python interpreter
* `kernel/yosys.cc`: Gated `PyImport_AppendInittab` with `!Py_IsInitialized`; as of Python 3.12, the interpreter is already initialized and `PyImport_AppendInittab` would cause an exception to be raised
* Created `wheels.yml`: CI workflow for building wheels for CPython on:
  * Linux (glibc, musl) and Darwin
  * x86-64 and arm64
2024-10-07 16:39:54 +03:00
Akash Levy
89630d3755
Merge branch 'YosysHQ:main' into master 2024-07-28 22:42:33 -07:00
Roland Coeurjoly
ce11ddbf21 Simplified run_frontend by using a lambda function for file extension checks and combining blif and eblif into a single condition. 2024-07-23 17:55:04 +02:00
Roland Coeurjoly
8c1431f373 Guess VHDL frontend for both *.vhd and *vhdl files 2024-07-23 17:01:57 +02:00
Akash Levy
a42f4dbedb
Merge branch 'YosysHQ:main' into master 2024-07-18 00:10:20 -07:00
Alexander von Gluck
2f514487cb haiku: Basic fixes to build under Haiku 2024-07-15 12:57:34 +02:00
Akash Levy
fce46d2a53 Add better Yosys/Verific name aliasing and reenable dffe opt 2024-06-15 14:18:33 -07:00
Akash Levy
0fa8098ff4 Updates for pyosys on Mac 2024-04-09 07:16:11 -07:00
Jason Thorpe
a02d4e7853 Tweak the FreeBSD version of proc_self_dirname() to work on NetBSD use it. 2024-03-03 07:54:39 -08:00
Martin Povišer
dd11a5a37c Shrink further 2024-02-26 16:25:46 +01:00
Martin Povišer
b5b737de38 Shrink a bit more 2024-02-22 22:20:35 +01:00
Martin Povišer
f7737a12ca Cut down startup banner 2024-02-22 22:14:32 +01:00
Martin Povišer
173f4b5fbd Bump Claire's notices 2024-02-22 22:03:44 +01:00
hakan-demirli
c1d3288654 chore: use similar variable/function names 2024-02-02 01:25:58 +03:00
hakan-demirli
820232eaca fix: function naming and locations 2024-01-31 19:50:31 +03:00
Miodrag Milanovic
2ab7d1d0c8 Fix readline/editline memory leak 2023-10-06 16:05:44 +02:00
Rasmus Munk Larsen
cb9f318d37 Remove local modifications. 2023-10-03 09:29:06 +01:00
Rasmus Munk Larsen
4968229efc Speed up stringf / vstringf by 1.8x.
The main speedup is accomplished by avoiding a heap allocation in the common case where the final string length is less than 128. Inlining stringf & vstringf adds an additional improvement.
2023-10-03 09:29:06 +01:00
Miodrag Milanovic
6574553189 Fixes for some of clang scan-build detected issues 2023-01-17 12:58:08 +01:00
Jannis Harder
6589accfa9 tcl: Update help message to mention 'tee -s' 2022-12-05 16:47:22 +01:00
Jannis Harder
a43356cb04 tcl: Unset both result.json and result.string only before calling pass 2022-12-05 16:17:00 +01:00
Jannis Harder
0f7b8b8d23 tcl: Don't exit repl on recoverable command errors 2022-12-02 15:50:41 +01:00
Jannis Harder
5524d5185d tcl: Return scratchpad result.json and result.string as tcl objects
This makes it possible for yosys commands to return values when invoked
as tcl commands. Right now no commands natively support this, but the
tee command can be used with json output like this:

```tcl
set stat [yosys tee -q -s result.json stat -json -top top]
dict get $stat modules \\top num_cells_by_type \$pmux
```

Or with newline separated lists like this:

```tcl
split [yosys tee -q -s result.string select -list top] "\n"
```
2022-12-02 14:36:19 +01:00