Commit Graph

657 Commits

Author SHA1 Message Date
Yosys Bot 4491548037 Bump version 2020-12-24 00:10:08 +00:00
Yosys Bot 832f6aa777 Bump version 2020-12-23 00:10:07 +00:00
Yosys Bot b62a892b2f Bump version 2020-12-22 00:10:05 +00:00
Yosys Bot b90d51e35d Bump version 2020-12-20 00:10:10 +00:00
Yosys Bot eaf6b551b6 Bump version 2020-12-18 00:10:05 +00:00
Yosys Bot 40e35993af Bump version 2020-12-15 00:10:06 +00:00
Yosys Bot 5a881497e1 Bump version 2020-12-13 00:10:07 +00:00
Yosys Bot 442d19f647 Bump version 2020-12-10 00:10:10 +00:00
Yosys Bot c46452221e Bump version 2020-12-09 00:10:04 +00:00
Yosys Bot 95c6086681 Bump version 2020-12-04 00:10:06 +00:00
Yosys Bot 5a15307926 Bump version 2020-12-03 00:10:09 +00:00
whitequark 975b2d4283
Merge pull request #2455 from gsomlo/gls-fedpkg-fixes
Fixes for building Fedora distro RPMs of yosys
2020-12-02 22:19:52 +00:00
Yosys Bot d021f4b400 Bump version 2020-12-02 00:10:06 +00:00
Gabriel Somlo 6a328e7032 fixup over commit 829b5cca to re-enable ABCEXTERNAL support 2020-11-26 06:12:12 -05:00
Yosys Bot 2116c58581 Bump version 2020-11-26 00:10:09 +00:00
whitequark c6b5b18a30
Merge pull request #2442 from cr1901/sccache
Makefile: Add disabled-by-default ENABLE_SCCACHE config option.
2020-11-25 02:48:39 +00:00
William D. Jones 9431033921 Makefile: Update ABCREV to bring in sccache fixes. 2020-11-24 21:32:27 -05:00
Yosys Bot 88c47a380b Bump version 2020-11-25 00:10:05 +00:00
Yosys Bot 949eb95593 Bump version 2020-11-21 00:10:06 +00:00
William D. Jones 296a23f489 Makefile: Add disabled-by-default ENABLE_SCCACHE config option. 2020-11-19 13:23:54 -05:00
Yosys Bot 5b35d953f7 Bump version 2020-11-19 00:10:10 +00:00
Yosys Bot 58e8901fee Bump version 2020-11-17 00:10:06 +00:00
Yosys Bot 71ca9a8253 Bump version 2020-11-11 00:10:17 +00:00
Yosys Bot 014c7e26b8 Bump version 2020-11-08 00:10:06 +00:00
whitequark 630be7e11a
Merge pull request #2414 from zeldin/abc-depend-clang-fix
Prevent CXXFLAGS from leaking to abc Makefile
2020-11-07 18:48:03 +00:00
Marcus Comstedt 5594594e16 Prevent CXXFLAGS from leaking to abc Makefile
This fixes an issue with abc/depends.sh when the compiler is clang.
2020-11-07 16:02:49 +01:00
Yosys Bot e7f36d01e4 Bump version 2020-11-03 00:10:05 +00:00
Yosys Bot d9af3cadf8 Bump version 2020-11-02 00:10:06 +00:00
Yosys Bot 56054f2ce3 Bump version 2020-11-01 00:10:05 +00:00
Yosys Bot 166a84bdb8 Bump version 2020-10-31 00:10:15 +00:00
Yosys Bot e2a39bb1e7 Bump version 2020-10-25 00:10:05 +00:00
Yosys Bot 623526d17d Bump version 2020-10-23 00:10:07 +00:00
Yosys Bot 1a7a597e07 Bump version 2020-10-22 00:10:06 +00:00
Marcelina Kościelnicka 8720482ebd Add new helper structures to represent memories. 2020-10-21 17:51:20 +02:00
Yosys Bot c76d533e07 Bump version 2020-10-21 00:10:07 +00:00
Yosys Bot 06347b119b Bump version 2020-10-20 00:10:06 +00:00
Miodrag Milanović ac0bd2ffc4
Merge pull request #2397 from daveshah1/nexus
synth_nexus: Initial implementation
2020-10-19 11:20:56 +02:00
Yosys Bot 4c925a3214 Bump version 2020-10-16 00:10:07 +00:00
David Shah 4d584d9319 synth_nexus: Initial implementation
Signed-off-by: David Shah <dave@ds0.me>
2020-10-15 08:52:15 +01:00
Yosys Bot 84e9fa7648 Bump version 2020-10-13 00:10:06 +00:00
Yosys Bot c403c984dd Bump version 2020-10-09 00:10:05 +00:00
Yosys Bot fd306b0520 Bump version 2020-10-06 00:10:06 +00:00
Yosys Bot 5aa35b8992 Bump version 2020-10-03 00:10:06 +00:00
Yosys Bot a1a3e686c7 Bump version 2020-10-02 00:10:05 +00:00
Yosys Bot f9ed9786bf Bump version 2020-10-01 00:10:08 +00:00
Miodrag Milanovic 9e00f3f141 Fixed installation dir override for Python scripts 2020-09-30 07:47:36 +02:00
Yosys Bot 5a3ac39f5f Bump version 2020-09-30 00:10:09 +00:00
Yosys Bot dfc43c38f8 Bump version 2020-09-29 00:10:05 +00:00
Miodrag Milanović 08eb0821c9
Merge pull request #2386 from btut/fix/pyinstallpath
Fixed python installation path
2020-09-28 12:54:38 +02:00
Benedikt Tutzer 4892ec853b Use CXXFLAGS to enable pyosys specific code before generating wrappers
The .pyh files were generated without the CXXFLAGS. This meant that code
marked by the WITH_PYTHON flag was excluded. This is fixed by adding the
flag in the rule for .pyh files.
2020-09-25 12:57:46 +02:00
Benedikt Tutzer 9266d20afc Fixed python installation path
The path where python expects it's libraries seems to change from
operating system to operating system, but can be querried from the site
package.
2020-09-25 11:21:16 +02:00
Yosys Bot cd8b2ed4e6 Bump version 2020-09-24 00:10:06 +00:00
Yosys Bot 8fbb517118 Bump version 2020-09-22 00:10:15 +00:00
Yosys Bot c6ff947f6b Bump version 2020-09-19 00:10:08 +00:00
Yosys Bot 7affef7c17 Bump version 2020-09-18 00:10:08 +00:00
Yosys Bot 859e52af59 Bump version 2020-09-11 00:10:06 +00:00
Yosys Bot 474cd02eb5 Bump version 2020-09-04 00:10:06 +00:00
Yosys Bot d963bdb484 Bump version 2020-09-03 00:10:06 +00:00
Yosys Bot 463869bf4f Bump version 2020-09-02 00:10:07 +00:00
Yosys Bot 244af8b8b7 Bump version 2020-09-01 00:10:06 +00:00
Yosys Bot 3030c2b46c Bump version 2020-08-30 00:10:07 +00:00
Yosys Bot f752023556 Bump version 2020-08-29 00:10:06 +00:00
Yosys Bot c75d8c7439 Bump version 2020-08-28 00:10:07 +00:00
whitequark a0177569ac
Merge pull request #2357 from whitequark/cxxflags-MP
Add -MP to CXXFLAGS
2020-08-27 11:40:57 +00:00
whitequark 702f7c0253
Merge pull request #2358 from whitequark/rename-ilang-to-rtlil
Replace "ILANG" with "RTLIL" everywhere
2020-08-27 11:24:06 +00:00
Yosys Bot 925c0f2594 Bump version 2020-08-27 00:10:06 +00:00
whitequark 00e7dec7f5 Replace "ILANG" with "RTLIL" everywhere.
The only difference between "RTLIL" and "ILANG" is that the latter is
the text representation of the former, as opposed to the in-memory
graph representation. This distinction serves no purpose but confuses
people: it is not obvious that the ILANG backend writes RTLIL graphs.

Passes `write_ilang` and `read_ilang` are provided as aliases to
`write_rtlil` and `read_rtlil` for compatibility.
2020-08-26 17:29:32 +00:00
whitequark deb19e1574 Add -MP to CXXFLAGS.
This avoids an issue where deleting or moving headers breaks the next
incremental build until the outdated *.d files are deleted.
2020-08-26 16:56:10 +00:00
Yosys Bot 12132b6850 Bump version 2020-08-23 00:10:08 +00:00
Yosys Bot dc20d9e842 Bump version 2020-08-21 00:10:06 +00:00
Yosys Bot 23719ad46d Bump version 2020-08-20 00:10:07 +00:00
Yosys Bot 93d663be62 Bump version 2020-08-19 00:10:09 +00:00
Yosys Bot 3cb3978ff4 Bump version 2020-08-14 00:10:13 +00:00
Yosys Bot f61d62a7bc Bump version 2020-08-13 00:10:08 +00:00
Yosys Bot 04f6158bf2 Bump version 2020-08-10 09:30:51 +00:00
Claire Wolf c39ebe6ae0 Bump YOSYS_VER
Signed-off-by: Claire Wolf <claire@symbioticeda.com>
2020-07-31 20:57:41 +02:00
Marcelina Kościelnicka dafe04d559 Add utility module for representing flip-flops. 2020-07-23 23:39:46 +02:00
Marcelina Kościelnicka 022af4f0ca Add utility module for dealing with init attributes. 2020-07-23 20:49:48 +02:00
Marcelina Kościelnicka 85a1bb17ed satgen: Move importCell out of the header.
This function has no hope of ever getting inlined anyway, and it speeds
up yosys compile time by 7%.
2020-07-19 00:17:02 +02:00
Lucas Castro 68babb2ae4
Fix issue #2251 (#2252)
* Fix #2251 - YosysJS ReferenceError: _memset is not defined.
Add '_memset' in emcc EXPORTED_FUNCTIONS in Makefile.
2020-07-09 18:50:26 +02:00
Dan Ravensloft 7d5828a706 Add option to use ccache when building 2020-07-04 19:59:39 +01:00
whitequark 778332384a Update ABC. 2020-06-22 14:18:07 +00:00
whitequark a0466e1a96 cxxrtl: add missing installs of include files. 2020-06-08 12:55:11 +00:00
whitequark 2384a59e2a
Merge pull request #2051 from Xiretza/makefile-cd-warning
Suppress warning during initial clone of ABC repo
2020-05-28 10:00:49 +00:00
Xiretza 204e8b6fc6
Suppress warning during initial clone of ABC repo
9dedac50 introduced this harmless but disconcerting warning, which was emitted
when abc/ did not yet exist and was about to be cloned:

/bin/sh: line 0: cd: abc: No such file or directory
2020-05-14 11:18:35 +02:00
Eddie Hung b11cf67a81 Setup tests/verilog properly 2020-05-11 10:31:02 -07:00
N. Engelhardt c9befa769f Remove yosys libdir from LDFLAGS (and fix a typo) 2020-05-07 19:28:18 +02:00
Eddie Hung 8eb98b12c7 Makefile: git fetch all commits from $(ABCURL) repo 2020-05-06 16:23:46 -07:00
whitequark ff7a8d0e1e Update ABC to include WASI support fixes. 2020-05-02 00:18:33 +00:00
whitequark b36060cc20 Fix WASI builds with abc enabled.
This PR works around #2011.
2020-05-01 23:57:35 +00:00
whitequark bbde241942
Merge pull request #2001 from whitequark/wasi
Add WASI platform support
2020-05-01 21:28:20 +00:00
Claire Wolf 667f38fe53
Merge pull request #1997 from whitequark/document-ootb
Explain how to do out-of-tree builds in README
2020-05-01 15:35:33 +02:00
whitequark b43c282e4e Add WASI platform support.
This includes the following significant changes:
  * Patching ezsat and minisat to disable resource limiting code
    on WASM/WASI, since the POSIX functions they use are unavailable.
  * Adding a new definition, YOSYS_DISABLE_SPAWN, present if platform
    does not support spawning subprocesses (i.e. Emscripten or WASI).
    This definition hides the definition of `run_command()`.
  * Adding a new Makefile flag, DISABLE_SPAWN, present in the same
    condition. This flag disables all passes that require spawning
    subprocesses for their function.
2020-04-30 18:56:25 +00:00
Eddie Hung a3fa9fd6e9 abc: use YosysHQ/abc instead of upstream berkeley-abc/abc
Enabling modifications
2020-04-27 12:03:40 -07:00
whitequark f1087b2552 Fix out-of-tree builds configured as `SMALL := 1`. 2020-04-24 23:27:43 +00:00
whitequark 2ee028dcf1
Merge pull request #1900 from Xiretza/suppress-makefile-echo
Suppress output of Makefile.conf when printing source versions
2020-04-16 13:28:34 +00:00
Dan Ravensloft 2e37e62e6b synth_intel_alm: alternative synthesis for Intel FPGAs
By operating at a layer of abstraction over the rather clumsy Intel primitives,
we can avoid special hacks like `dffinit -highlow` in favour of simple techmapping.

This also makes the primitives much easier to manipulate, and more descriptive
(no more cyclonev_lcell_comb to mean anything from a LUT2 to a LUT6).
2020-04-15 11:40:41 +02:00
Xiretza 333981acfd
Suppress output of Makefile.conf when printing source versions
The make targets echo-yosys-ver, echo-git-ver and echo-abc-rev can be
used to programmatically extract contents of make variables for external
scripts. Unfortunately, when a Makefile.conf exists, its contents would
also be echoed, making the output almost unusable. This patch
selectively disables this functionality for these special targets.
2020-04-11 13:23:08 +02:00
Miodrag Milanovic af7b7b6dc1 Keep libyosys name same as befire, but put it in directory 2020-04-10 15:02:48 +02:00
Miodrag Milanovic 0d789c5a3b Support custom PROGRAM_PREFIX 2020-04-10 10:38:40 +02:00
whitequark d20e971725 write_cxxrtl: new backend.
This commit adds a basic implementation that isn't very performant
but implements most of the planned features.
2020-04-09 04:08:36 +00:00
Xiretza 5f649fc19d Add constids.inc to final install
If this is not present in the install, #include-ing most yosys
headers will fail in rtlil.h:380.
2020-04-08 21:36:33 +02:00
Claire Wolf 40223eaee1
Merge pull request #1814 from YosysHQ/mmicko/pyosys_makefile
Enable ENABLE_LIBYOSYS when ENABLE_PYOSYS is set (closes #1813)
2020-04-07 17:06:47 +02:00
Claire Wolf 3477749459 Bump YOSYS_VER
Signed-off-by: Claire Wolf <claire@symbioticeda.com>
2020-04-02 15:40:00 +02:00
Miodrag Milanovic aad92abce9 Enable ENABLE_LIBYOSYS when ENABLE_PYOSYS is set 2020-03-25 10:02:56 +01:00
Alberto Gonzalez 1b333d49ef
Add tests for `select` command warnings. 2020-03-23 17:30:53 +00:00
Xiretza 9dedac50e2
Improve ABC repository management in Makefile
`rev-parse --short` output may have a different abbreviated hash length than
ABCREV, so a simple string comparison always fails, even if the correct
commit is checked out. Pass both commits through rev-parse and then
compare the full hashes instead.

Add an `echo-abc-rev` target so that packaging scripts can set ABCPULL=0 and
handle all the git nastiness themselves.
2020-03-12 19:26:21 +01:00
Miodrag Milanovic a0cc795e85 Added filter-out for libyosys.so 2020-03-12 18:28:20 +01:00
Miodrag Milanovic f37f558f72 Revert "Clean up 'install' Makefile target"
This reverts commit 2a746234fe.
2020-03-12 18:26:19 +01:00
Miodrag Milanovic 178a8e3bff Revert "Improve ABC repository management in Makefile"
This reverts commit 90404e1969.
2020-03-12 18:26:07 +01:00
Miodrag Milanović af84e5acf1
Merge pull request #1666 from Xiretza/improve-makefile
Makefile improvements for packaging scripts
2020-03-12 16:14:48 +02:00
Miodrag Milanovic 82ad422b4e Add mandatory wasm file to zip file as well 2020-03-12 11:17:15 +01:00
jiegec 26137d8bb7 Add EXTRA_EXPORTED_RUNTIME_METHODS env for yosysjs 2020-03-11 23:01:04 +08:00
jiegec 7b679eecb3 Fix compilation for emcc 2020-03-11 22:09:24 +08:00
Eddie Hung 7a89ed1fa2 Bump ABCREV to receive fix for #1675 2020-03-06 10:32:48 -08:00
Rodrigo Alejandro Melo eaaba6e091 Added tests/memfile to 'make test' with an extra testcase
Signed-off-by: Rodrigo Alejandro Melo <rodrigomelo9@gmail.com>
2020-02-01 22:44:06 -03:00
Xiretza 90404e1969
Improve ABC repository management in Makefile
`rev-parse --short` output may have a different abbreviated hash length than
ABCREV, so a simple string comparison always fails, even if the correct
commit is checked out. Pass both commits through rev-parse and then
compare the full hashes instead.

Add an `echo-abc-rev` target so that packaging scripts can set ABCPULL=0 and
handle all the git nastiness themselves.
2020-01-29 19:10:54 +01:00
Xiretza 2a746234fe
Clean up 'install' Makefile target
- libyosys.so is now only installed to LIBDIR instead of LIBDIR, BINDIR
  and PYTHON_DESTDIR
- replace mkdir/cp for single files with `install`
2020-01-29 19:10:54 +01:00
Eddie Hung 93e680b7d3 Merge remote-tracking branch 'origin/master' into eddie/abc9_mfs 2020-01-11 07:59:56 -08:00
Eddie Hung 9005bb97ff Bump ABCREV for upstream fix 2020-01-11 07:59:18 -08:00
Clifford Wolf ccc83d99ba Bump version
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2020-01-09 21:37:28 +01:00
Eddie Hung 66b0f3c406 Bump ABCREV for upstream fix 2020-01-07 15:40:37 -08:00
Eddie Hung 7738d608e3 Bump ABCREV for upstream fix 2020-01-06 11:14:05 -08:00
Graham Edgecombe 319cba70d3 Fix linking with Python 3.8
The behaviour of python-config --libs has changed in Python 3.8.

For example, compare the output of it with Python 3.7 and 3.8 on an
ArchLinux system:

    $ python3.7-config --libs
    -lpython3.7m -lcrypt -lpthread -ldl  -lutil -lm
    $ python3.8-config --libs
    -lcrypt -lpthread -ldl  -lutil -lm -lm
    $

The lack of -lpython in the latter case causes the linker to fail when
attempting to build Yosys against Python 3.8.

Passing the new --embed flag to python-config adds -lpython, just like
earlier versions of Python:

    $ python3.8-config --embed --libs
    -lpython3.8 -lcrypt -lpthread -ldl  -lutil -lm -lm
    $

This commit adds code for automatically detecting support for the
--embed flag. If it is supported, it is passed to all python-config
invocations. This fixes building against Python 3.8.
2019-12-20 10:23:18 +01:00
Graham Edgecombe 2a8cfdebbb Add PYTHON_CONFIG variable to the Makefile 2019-12-20 10:23:18 +01:00
Pepijn de Vos 4ec4d5ec7e actually run the gowin tests 2019-10-28 14:28:03 +01:00
Sean Cross 82f60ba938 Makefile: don't assume python is called `python3`
On some architectures, notably on Windows, the official name for the
Python binary from python.org is `python`.  The build system assumes
that python is called `python3`, which breaks under this architecture.

There is already infrastructure in place to determine the name of the
Python binary when building PYOSYS.  Since Python is now always required
to build Yosys, enable this check universally which sets the
`PYTHON_EXECUTABLE` variable.

Then, reuse this variable in other Makefiles as necessary, rather than
hardcoding `python3` everywhere.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-10-19 14:04:52 +08:00
Miodrag Milanovic c2ec7ca703 Moved all tests in arch sub directory 2019-10-18 11:06:12 +02:00
Miodrag Milanović b4d7650548
Merge branch 'master' into mmicko/efinix 2019-10-18 10:54:28 +02:00
Miodrag Milanović 66fca65b58
Merge branch 'master' into mmicko/anlogic 2019-10-18 10:53:56 +02:00
Miodrag Milanović 0b0b0cc0d9
Merge branch 'master' into eddie/pr1352 2019-10-18 10:52:50 +02:00
SergeyDegtyar 6331fa5b02 Remove xilinx_ug901 tests (will be moved to yosys-tests) 2019-10-17 17:10:02 +02:00
SergeyDegtyar 757c476f62 Add smoke tests to tests/xilinx 2019-10-17 17:10:02 +02:00
SergeyDegtyar 2ae7dec530 Add tests for Xilinx UG901 examples 2019-10-17 17:08:38 +02:00
Clifford Wolf e84cedfae4 Use "(id)" instead of "id" for types as temporary hack
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-10-14 05:24:31 +02:00
Miodrag Milanovic ef417fb1b3 Merge branch 'SergeyDegtyar/efinix' of https://github.com/SergeyDegtyar/yosys into mmicko/efinix 2019-10-04 12:20:49 +02:00
Miodrag Milanovic b932654964 Merge branch 'SergeyDegtyar/anlogic' of https://github.com/SergeyDegtyar/yosys into mmicko/anlogic 2019-10-04 10:52:16 +02:00
Clifford Wolf 17cb916cc8 Update ABC to git rev 623b5e8
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-10-03 14:05:21 +02:00
Clifford Wolf be8efd7c7b Bump version
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-10-03 12:26:08 +02:00
David Shah abc155715d sv: Add test scripts for typedefs
Signed-off-by: David Shah <dave@ds0.me>
2019-10-03 09:54:14 +01:00
Sergey e092c4ae6b
Merge branch 'master' into SergeyDegtyar/efinix 2019-10-01 11:04:32 +03:00
Sergey d99b1e3261
Merge branch 'master' into SergeyDegtyar/anlogic 2019-10-01 10:57:09 +03:00
Eddie Hung 0bbd1b6364 Merge branch 'SergeyDegtyar/ecp5' of https://github.com/SergeyDegtyar/yosys into eddie/pr1352 2019-09-30 14:57:55 -07:00
whitequark 5c5881695d
Merge pull request #1406 from whitequark/connect_rpc
rpc: new frontend
2019-09-30 17:38:20 +00:00
whitequark 99a7f39084 rpc: new frontend.
A new pass, connect_rpc, allows any HDL frontend that can read/write
JSON from/to stdin/stdout or an unix socket or a named pipe to
participate in elaboration as a first class citizen, such that any
other HDL supported by Yosys directly or indirectly can transparently
instantiate modules handled by this frontend.

Recognizing that many HDL frontends emit Verilog, it allows the RPC
frontend to direct Yosys to process the result of instantiation via
any built-in Yosys frontend. The resulting RTLIL is then hygienically
integrated into the overall design.
2019-09-30 15:53:11 +00:00
whitequark 8f2bdff7b9 libs: import json11.
This commit imports the code from upstream commit
dropbox/json11@8ccf1f0c5e.
2019-09-30 15:53:11 +00:00
Clifford Wolf 7ed13297b1 Bump version
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-09-30 17:08:38 +02:00
SergeyDegtyar 1070f2e90b Add new tests for Efinix architecture.
Problems/questions:
	- fsm.ys. equiv_opt -assert failed because of unproven cells;
	- latches.ys,tribuf.ys - internal cells present;
	- memory.ys - sat called with -verify and proof did fail.
2019-09-23 15:51:41 +03:00
SergeyDegtyar 27377c4663 Add new tests for Anlogic architecture
Problems/questions:
	- memory.ys: ERROR: Failed to import cell gate.mem.0.0.0 (type
EG_LOGIC_DRAM16X4) to SAT database.
		Why EG_LOGIC_DRAM16X4, not AL_LOGIC_BRAM?
	- Internal cell type $_TBUF_  is present.
2019-09-23 12:12:02 +03:00
Clifford Wolf 36df37a734 Bump version
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-09-16 13:05:41 +02:00