Commit Graph

1517 Commits

Author SHA1 Message Date
Krystine Sherwin 9533cf2916
Makefile: Use dump-cells-json for docs 2024-10-15 07:26:03 +13:00
Akash Levy 469f5a707a
Merge branch 'YosysHQ:main' into main 2024-10-14 11:21:54 -07:00
Krystine Sherwin d629aa6bf1
cellhelp: Split gate-level and word-level cells 2024-10-15 07:17:35 +13:00
Krystine Sherwin 1a4ada40fe
Docs: Add cell gen to makefile
Generate in a temp directory and use `rsync -rc` to only update rst files that have changed.  This prevents sphinx from having to re-generate every cmd/cell page any time the git sha changes.
Also change cmd gen to match.
2024-10-15 07:16:40 +13:00
Akash Levy 0d5aa5bb77 Update Makefile to include sat 2024-10-14 09:57:56 -07:00
Emil J. Tywoniak 785bd44da7 rtlil: represent Const strings as std::string 2024-10-14 06:28:12 +02:00
Akash Levy 8e6ac65dd8
Merge branch 'YosysHQ:main' into main 2024-10-13 10:59:19 -07:00
github-actions[bot] 7f2bf3170f Bump version 2024-10-13 00:22:25 +00:00
Akash Levy ea4f153b42
Merge branch 'YosysHQ:main' into main 2024-10-10 10:24:07 -07:00
github-actions[bot] 0200a7680a Bump version 2024-10-10 00:20:21 +00: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
Miodrag Milanovic 8893dadc4b Next dev cycle 2024-10-09 08:12:44 +02:00
Miodrag Milanovic e97731b9dd Release version 0.46 2024-10-09 08:08:00 +02:00
github-actions[bot] b4fd8e7ed8 Bump version 2024-10-09 00:20:28 +00:00
Miodrag Milanović 535b3304cc
Merge pull request #4534 from donn/test_wheels
Pyosys Wheels
2024-10-08 11:24:16 +02:00
github-actions[bot] 408597b478 Bump version 2024-10-08 00:20:07 +00:00
Akash Levy fdc4c54c66
Merge branch 'YosysHQ:main' into main 2024-10-07 07:27:27 -10: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
github-actions[bot] 6155c59d00 Bump version 2024-10-07 00:21:37 +00:00
Krystine Sherwin 571d181fb4
Fix top-level make docs prerequisites
Add `$(TARGETS)` for gen_examples and gen_images since they need the `yosys` executable.
Add guidelines source files as a prerequisite to docs/source/generated while we're at it.
2024-10-07 10:26:29 +13:00
Akash Levy db55bbaf81 Add Liberty tests to test suite 2024-10-05 01:35:12 -10:00
Akash Levy af10f5e4f6 Update 2024-10-01 04:40:49 -07:00
Akash Levy a0ebd9545a Try again 2024-10-01 04:13:01 -07:00
Akash Levy 16b1eb1699 Update fix 2024-10-01 03:42:32 -07:00
Akash Levy dd9687fc4c Add way to disable memory init 2024-10-01 01:32:29 -07:00
Akash Levy 7442bfaa2f
Merge branch 'YosysHQ:main' into main 2024-09-30 18:58:14 -07:00
github-actions[bot] 1bf908dea8 Bump version 2024-10-01 00:23:05 +00:00
Akash Levy ee0b083a1e
Merge branch 'YosysHQ:main' into main 2024-09-30 02:43:09 -07:00
github-actions[bot] 59404f8ce5 Bump version 2024-09-30 00:21:26 +00:00
Akash Levy 6b9c45a841 Enable only the test suites we need 2024-09-23 05:39:56 -07:00
Akash Levy 69bf7875dd Small edits 2024-09-22 07:52:58 -07:00
Akash Levy 7d5dac7255 More apt location for whereami 2024-09-22 06:02:20 -07:00
Akash Levy f1ab51ce5b Clean up and remove hdl_file_sort 2024-09-22 05:58:17 -07:00
Akash Levy facb9e8abe Disable plugins and slang for now 2024-09-22 05:24:23 -07:00
Akash Levy 7988a61f8c Use enable debug and switch order of Verific opt passes 2024-09-19 00:48:31 -07:00
Akash Levy 1801bb966a Smallfix for slang support 2024-09-18 16:19:38 -07:00
Akash Levy 9bb6daa43a
Merge branch 'YosysHQ:main' into main 2024-09-17 22:42:22 -07:00
github-actions[bot] 4d581a97d6 Bump version 2024-09-18 00:19:41 +00:00
Akash Levy e4f1f5a96c
Merge branch 'YosysHQ:main' into main 2024-09-16 19:14:49 -07:00
github-actions[bot] c8846243c2 Bump version 2024-09-17 00:16:41 +00:00
Akash Levy 285c8a3f66
Merge branch 'YosysHQ:main' into main 2024-09-12 11:14:15 -07:00
github-actions[bot] 229d1ea937 Bump version 2024-09-12 00:19:38 +00:00
Akash Levy 02931ebfd2
Merge branch 'YosysHQ:main' into main 2024-09-10 11:23:27 -07:00
github-actions[bot] 6937241012 Bump version 2024-09-10 00:19:34 +00:00
Akash Levy 7ff3bff014 Add tee 2024-09-09 12:34:43 -07:00
Akash Levy d427b78afd
Merge branch 'YosysHQ:main' into main 2024-09-09 10:16:51 -07:00
github-actions[bot] dcf9f58315 Bump version 2024-09-07 00:18:42 +00:00
Akash Levy 74c26a8418 Try to disable func 2024-09-06 08:08:38 -07:00
Akash Levy 20c5ed2ebb Merge latest 2024-09-06 07:43:14 -07:00
Miodrag Milanović b20df72e1e
Merge pull request #4536 from YosysHQ/functional
Functional Backend
2024-09-06 10:05:04 +02:00
Miodrag Milanovic fc10a6eee2 Run functional tests on private runner only 2024-09-06 08:47:43 +02:00
Akash Levy b443ff5f05 Fix 2024-09-05 22:32:12 -07:00
Akash Levy 1d2a4116c2 Try again 2024-09-05 22:28:43 -07:00
Akash Levy c4c4fe603f Smallfix 2024-09-05 22:21:20 -07:00
Akash Levy cc3acb9894 Fix whereami extension 2024-09-05 22:13:28 -07:00
Akash Levy 18f05ba615 Add those CXXFLAGS 2024-09-05 22:10:04 -07:00
github-actions[bot] e8951aba29 Bump version 2024-09-06 00:19:21 +00:00
Akash Levy cd56f7f7b4 Add setattr to Makefile SMALL 2024-09-05 17:05:54 -07:00
Akash Levy 10c9e27433 Add yosys-slang 2024-09-05 15:22:31 -07:00
Akash Levy ce95ec1f9e Add VHDL support via GHDL call 2024-09-05 13:24:38 -07:00
Akash Levy 42dc3f6da6 Add splitcells and splitnets 2024-09-04 21:54:39 -07:00
Krystine Sherwin 21494d1f06
Makefile: Update coverage_functional
Note sure if this is the best way to do it, but it works?
2024-09-05 11:43:42 +12:00
Emily Schmidt 5a476a8d29 functional tests: run from make tests but not smtlib/rkt tests 2024-09-04 10:30:08 +01:00
Akash Levy 120f69eda7
Merge branch 'YosysHQ:main' into main 2024-09-04 00:02:25 -07:00
github-actions[bot] d567164173 Bump version 2024-09-04 00:19:13 +00:00
Miodrag Milanovic 0744fac883 Next dev cycle 2024-09-03 12:39:38 +02:00
Miodrag Milanovic 3e0dc2ff1e Release version 0.45 2024-09-03 10:28:56 +02:00
Miodrag Milanović 598d010349
Merge pull request #4504 from YosysHQ/nanoxplore
NanoXplore synthesis
2024-09-03 10:19:44 +02:00
Miodrag Milanović 9fca352882
Merge pull request #4563 from YosysHQ/krys/better_rtds_action
Better docs builds
2024-09-03 09:32:24 +02:00
github-actions[bot] 6b9321250b Bump version 2024-09-03 00:20:12 +00:00
Krystine Sherwin cab781d958
Makefile: Move docs prereqs to separate target 2024-09-03 11:30:59 +12:00
Akash Levy 81e4f0aaed Add check 2024-09-01 21:58:13 -07:00
Akash Levy 2c9c6e693f Add muxadd peepopt 2024-08-30 04:45:01 -07:00
Emily Schmidt 2b8db94aa0 functional backend: add test to verify test_generic 2024-08-29 13:14:18 +01:00
Akash Levy 4f6a153961 Working tree balance pass 2024-08-27 08:19:17 -07:00
Akash Levy f707a3b6cd
Merge branch 'YosysHQ:main' into main 2024-08-26 22:37:42 -07:00
Akash Levy 243d8317a5 SMALL mode with first pass of opt_balance_tree 2024-08-26 22:36:47 -07:00
Krystine Sherwin 0b53b10770
Makefile: Stop unconditionally install docs prereqs 2024-08-27 10:06:25 +12:00
github-actions[bot] 72f77dd97b Bump version 2024-08-23 00:18:22 +00:00
Akash Levy 57446f3f93
Merge branch 'YosysHQ:main' into master 2024-08-21 18:52:38 -07:00
github-actions[bot] 27b51cb351 Bump version 2024-08-22 00:18:24 +00:00
Emily Schmidt 850b3a6c29 convert class FunctionalIR to a namespace Functional, rename functionalir.h to functional.h, rename functional.h to compute_graph.h 2024-08-21 11:04:08 +01:00
Emily Schmidt 00a65754bb factor out SExpr/SExprWriter classes out of smtlib backend, and also tidy them up/document them 2024-08-21 11:03:27 +01:00
Miodrag Milanovic e296b884d5 Add Makefile helpers for coverage 2024-08-21 11:02:31 +01:00
Emily Schmidt 6f9e21219b add new generic compute graph and rewrite c++ functional backend to use it 2024-08-21 11:02:29 +01:00
Jannis Harder 56572978f5 drivertools: Utility code for indexing and traversing signal drivers
It adds `DriveBit`, `DriveChunk` and `DriveSpec` types which are similar
to `SigBit`, `SigChunk` and `SigSpec` but can also directly represent
cell ports, undriven bits and multiple drivers. For indexing an RTLIL
module and for querying signal drivers it comes with a `DriverMap` type
which is somewhat similar to a `SigMap` but is guaranteed to produce
signal drivers as returned representatives.

A `DriverMap` can also optionally preserve connections via intermediate
wires (e.g. querying the driver of a cell input port will return a
connected intermediate wire, querying the driver of that wire will
return the cell output port that's driving the wire).
2024-08-21 11:00:21 +01:00
Akash Levy e2957936e4
Merge branch 'YosysHQ:main' into master 2024-08-20 01:38:01 -07:00
github-actions[bot] 4cddc19994 Bump version 2024-08-20 00:18:24 +00:00
Akash Levy 56cfcdb9f6
Merge branch 'YosysHQ:main' into master 2024-08-19 17:12:02 -07:00
N. Engelhardt 7f08a298a4
Merge pull request #4542 from YosysHQ/krys/rtd
Local readthedocs
2024-08-19 10:04:38 +02:00
github-actions[bot] 5fb3c0b1d9 Bump version 2024-08-17 00:17:44 +00:00
KrystalDelusion 3dd32d741a Stop unconditionally building abc
_What are the reasons/motivation for this change?_
abc builds unconditional because `check-git-abc` is a phony prerequisite and therefore always runs, and since it always runs it will always trigger abc to rebuild.

_Explain how this is achieved._
Convert `check-git-abc` to an order-only prerequisite.  It still runs as before, but no longer triggers yosys-abc to rebuild when it does.

_If applicable, please suggest to reviewers how they can test the change._
2024-08-17 11:04:17 +12:00
Krystine Sherwin 3b63ab07ae
docs: Build RTD artifacts directly
Use rtds-action instead of yosys-cmd-ref repo.
Add rtds_action to docs configuration.
Add `.readthedocs.yaml`.
Update `DOCS_USAGE_` make target to be able to use pre-generated executables without forcing a remake.
2024-08-16 10:43:51 +12:00
Miodrag Milanovic 34f08bc639 Enable nanoxplore tests 2024-08-15 17:50:36 +02:00
github-actions[bot] 1eaf4e0790 Bump version 2024-08-15 00:17:57 +00:00
Akash Levy a11ffe3c5c Upstream merge 2024-08-13 13:16:57 -07:00
github-actions[bot] 4b9f452735 Bump version 2024-08-13 00:19:11 +00:00
Akash Levy a66e32d471
Merge branch 'YosysHQ:main' into master 2024-08-08 01:38:27 -07:00
github-actions[bot] 77b2ae2e39 Bump version 2024-08-08 00:18:08 +00:00
Akash Levy 953f405a84
Merge branch 'YosysHQ:main' into master 2024-08-07 11:47:52 -07:00
github-actions[bot] 669f8b18f0 Bump version 2024-08-07 00:18:20 +00:00
Akash Levy 31d8d5de41
Merge branch 'YosysHQ:main' into master 2024-08-06 03:06:59 -07:00
Akash Levy 7f5dcd270d
Merge branch 'YosysHQ:main' into master 2024-08-06 01:01:08 -07:00
Miodrag Milanovic d08bf671b2 Next dev cycle 2024-08-06 09:48:35 +02:00
Miodrag Milanovic 80ba43d262 Release version 0.44 2024-08-06 09:42:28 +02:00
Miodrag Milanović e5d8505349
Merge pull request #4523 from YosysHQ/emil/no-lto-lld
Makefile: no LTO and lld by default
2024-08-06 09:08:09 +02:00
github-actions[bot] d2b5788674 Bump version 2024-08-06 00:18:14 +00:00
Akash Levy 24f38678ac NDEBUG doesn't do anything 2024-08-05 16:46:00 -07:00
Emil J. Tywoniak eeecb54532 Makefile: no LTO and lld by default 2024-08-05 19:28:09 +02:00
Akash Levy 76db4e390b Smalledit 2024-08-01 00:04:50 -07:00
Akash Levy c0af4604bc Update Yosys 2024-07-30 16:55:18 -07:00
github-actions[bot] c788484679 Bump version 2024-07-30 00:18:19 +00:00
Emil J 92cac63845
Merge pull request #4344 from widlarizer/emil/keep_hierarchy
cost: add keep_hierarchy pass with min_cost argument
2024-07-29 16:33:08 +02:00
N. Engelhardt 9f869b265c
Merge pull request #4474 from tony-min-1/mchp
Add PolarFire FPGA support
2024-07-29 15:28:44 +02:00
Emil J e21dd292fc
Merge pull request #4502 from YosysHQ/emil/build-opt-levels
Release build configuration improvements
2024-07-29 15:13:52 +02:00
Emil J. Tywoniak 4b29f64142 cost: add model for techmapped cell count, keep_hierarchy pass with -min_cost parameter 2024-07-29 10:26:02 +02:00
Akash Levy 89630d3755
Merge branch 'YosysHQ:main' into master 2024-07-28 22:42:33 -07:00
github-actions[bot] 960bca0196 Bump version 2024-07-27 00:17:35 +00:00
github-actions[bot] 610d27dc1c Bump version 2024-07-26 00:17:42 +00:00
Emil J. Tywoniak 7cd27e1182 Makefile: remove accidental abc opt level override for wasi builds 2024-07-24 21:31:35 +02:00
Emil J. Tywoniak bf758b9097 Makefile: turn off LTO on gcc due to regression 2024-07-22 20:59:56 +02:00
Akash Levy 2c4849805a Update 2024-07-18 17:27:36 -07:00
github-actions[bot] 28ebefda4a Bump version 2024-07-19 00:17:55 +00:00
Martin Povišer 81df8557d9
Merge pull request #4494 from povik/install-bitpattern-h
Makefile: do install `bitpattern.h`
2024-07-18 15:50:58 +02:00
Emil J 1d7a47bb6b
Merge pull request #4487 from YosysHQ/emil/abc-reproducible-git-hash
Reproducible git hash
2024-07-18 11:54:07 +02:00
Akash Levy a42f4dbedb
Merge branch 'YosysHQ:main' into master 2024-07-18 00:10:20 -07:00
Martin Povišer ec32c9a056 Makefile: do install `bitpattern.h` 2024-07-17 18:26:12 +02:00
github-actions[bot] 49f547782c Bump version 2024-07-16 00:18:08 +00:00
Alexander von Gluck 2f514487cb haiku: Basic fixes to build under Haiku 2024-07-15 12:57:34 +02:00
Emil J. Tywoniak 0cd55e1d7c Makefile: fix 2024-07-12 11:00:36 +02:00
Emil J. Tywoniak 9d15f1d6ac Makefile: reproducible .gitcommit 2024-07-12 10:52:03 +02:00
Akash Levy 8c43571fea
Merge branch 'YosysHQ:main' into master 2024-07-09 17:57:51 -07:00
github-actions[bot] b08688f711 Bump version 2024-07-10 00:18:13 +00:00
Emil J. Tywoniak 725746baa6 Makefile: LTO for all, lld for clang 2024-07-09 11:25:16 +02:00
Miodrag Milanovic b9181aaad2 Next dev cycle 2024-07-09 09:27:23 +02:00
Miodrag Milanovic c6e5e0b26b Release version 0.43 2024-07-09 09:11:59 +02:00
Emil J. Tywoniak ad22430b96 Makefile: use -O3 instead of -Os 2024-07-08 19:19:10 +02:00
Emil J. Tywoniak fee274c76a Makefile: let clang use -Og in debug builds 2024-07-08 18:16:04 +02:00
chunlin min 9de5602574 ininclude microchip tests in makefile 2024-07-04 15:54:59 -04:00
Akash Levy 70016a08b8 Disable debug 2024-07-03 06:55:53 -07:00
Akash Levy 80b50f136d Debug on 2024-07-02 19:02:58 -07:00
Akash Levy e22cded6d4 Fix 2024-07-02 17:36:41 -07:00
Akash Levy 6204be060c Enable Verific 2024-07-02 15:13:03 -07:00
Akash Levy 0596766cbd Merge upstream yosys changes 2024-07-01 18:33:38 -07:00
Akash Levy 0b47da5969 Smallfix 2024-07-01 12:51:46 -07:00
github-actions[bot] a739e21a5f Bump version 2024-06-29 00:16:56 +00:00
github-actions[bot] 1288166f7a Bump version 2024-06-25 00:17:11 +00:00
Miodrag Milanović 1e401c3e04
Merge pull request #4460 from YosysHQ/micko/c++17
Make C++17 compiler required
2024-06-24 19:54:30 +02:00
Miodrag Milanovic 777624ccf5 Make yosys-config dependant of Makefile 2024-06-24 16:08:08 +02:00