Commit Graph

505 Commits

Author SHA1 Message Date
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
Clifford Wolf 486cbddd26 Bump version
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-09-10 18:42:45 +02:00
Clifford Wolf 58ec1df4c2 Bump version
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-09-05 19:05:13 +02:00
Emily a9af28694c Use $(shell :; ...) in Makefile to force shell
Did you think that `$(shell command -v ...)` would actually get run by
the shell? Foolish mortal; GNU Make is obviously far more wise than
thee, as it optimizes it to a direct -- and hence broken (since
`command` is a shell builtin) -- exec. This horrifying contortion
ensures that an actual shell runs the command and fixes the behaviour.

@Shizmob found the source of this misbehaviour; turns out gmake has a
hard-coded, incomplete list of shell builtins:

    715c787dc6/src/job.c (L2691)

This contains `command`, but the whole function is full of horrible
heuristic garbage so who knows. I'm so sorry.
2019-09-05 00:43:30 +01:00
Emily a7ea6a6fcf Replace `which` with `command -v` in Makefile too 2019-09-04 19:01:00 +01:00
SergeyDegtyar 11f330ed22 Add tests for ECP5 architecture 2019-09-03 11:53:37 +03:00
Sergey 5dda8f39a6
Merge pull request #2 from YosysHQ/master
Pull from upstream
2019-08-29 21:09:40 +03:00
Clifford Wolf 89695fd3ab Bump YOSYS_VER
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-08-29 12:05:26 +02:00
Eddie Hung 32eef26ee2 Merge remote-tracking branch 'origin/clifford/async2synclatch' into Sergey/tests_ice40 2019-08-28 12:18:32 -07:00
SergeyDegtyar fe58790f37 Revert "Add tests for ecp5"
This reverts commit 2270ead09f.
2019-08-28 09:49:58 +03:00
SergeyDegtyar 2270ead09f Add tests for ecp5 2019-08-28 09:47:03 +03:00
SergeyDegtyar 980830f7b8 Revert "Add tests for ecp5 architecture."
This reverts commit 134d3fea90.
2019-08-27 18:28:05 +03:00
SergeyDegtyar 134d3fea90 Add tests for ecp5 architecture. 2019-08-27 18:12:18 +03:00
Clifford Wolf fdbcf78909 Add "make bumpversion"
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-08-27 10:15:25 +02:00
Clifford Wolf 8a4c6e6563 Merge tag 'yosys-0.9' 2019-08-26 11:14:22 +02:00
Clifford Wolf 1979e0b1f2 Yosys 0.9
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-08-26 10:37:53 +02:00
Miodrag Milanovic 7fafaa896d do not require boost if pyosys is not used 2019-08-22 11:57:46 -07:00
Miodrag Milanovic e5dac8096d do not require boost if pyosys is not used 2019-08-22 20:43:52 +02:00
Clifford Wolf d0117d7d12
Merge branch 'master' into clifford/pmgen 2019-08-20 11:39:23 +02:00
SergeyDegtyar 153ec0541c Add new tests for ice40 architecture 2019-08-20 07:50:05 +03:00
whitequark 4a942ba7b9 proc_clean: fix order of switch insertion.
Fixes #1268.
2019-08-19 16:44:23 +00:00
Clifford Wolf 1e3dd0a2da Merge branch 'master' of github.com:YosysHQ/yosys into clifford/pmgen 2019-08-19 13:04:06 +02:00
Eddie Hung e34f2de55d Merge remote-tracking branch 'origin/master' into clifford/testfast 2019-08-18 21:29:15 -07:00
Clifford Wolf 9e940f1276 Speed up "make test" and related cleanups
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-08-17 14:37:07 +02:00
Eddie Hung 51d28645da Merge https://github.com/bogdanvuk/yosys into bogdanvuk/opt_share 2019-08-16 13:40:29 -07:00
Clifford Wolf 73bf453929 Improvements in pmgen for recursive patterns
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2019-08-15 18:35:56 +02:00
Eddie Hung 13b7d2252e 'make clean' to not remove anything abc 2019-08-07 11:10:18 -07:00
Bogdan Vukobratovic 6a796accc0 Support various binary operators in opt_share 2019-08-04 19:06:38 +02:00
Miodrag Milanovic 2ec5a3ec92 Fix linking issue for new mxe and pthread 2019-08-02 16:55:14 +02:00
Miodrag Milanovic ce0de937f4 Fix yosys linking for mxe 2019-08-02 16:55:14 +02:00
Miodrag Milanovic e9c5f1b346 Fix formatting for msys2 mingw build using GetSize 2019-08-02 16:55:14 +02:00
Miodrag Milanovic 7a65ed19a5 Fix linking issue for new mxe and pthread 2019-08-01 17:30:02 +02:00
Miodrag Milanovic 3f633690ae Fix yosys linking for mxe 2019-08-01 17:28:07 +02:00
Miodrag Milanovic 28b7053a01 Fix formatting for msys2 mingw build using GetSize 2019-08-01 17:27:34 +02:00
David Shah 6538671c84
Merge pull request #1226 from YosysHQ/dave/gzip
Add support for gzip'd input files
2019-07-27 07:40:38 +01:00
David Shah 933db0410e Add support for reading gzip'd input files
Signed-off-by: David Shah <dave@ds0.me>
2019-07-26 10:23:58 +01:00
Eddie Hung c5e31ac9c3 Bump abc to fix &mfs bug 2019-07-25 10:48:58 -07:00
Clifford Wolf ef0823690c Merge pull request #1146 from gsomlo/gls-test-abc-ext
tests: use optional ABCEXTERNAL when specified
2019-07-09 18:44:57 +01:00
Eddie Hung 43069e9eb9 Checkout yosys-0.9-rc branch of yosys-tests 2019-07-02 10:06:56 -07:00
Eddie Hung da5f830395
Merge pull request #1098 from YosysHQ/xaig
"abc9" pass for timing-aware techmapping (experimental, FPGA only, no FFs)
2019-06-28 10:59:03 -07:00
Gabriel L. Somlo 6f1c137989 tests: use optional ABCEXTERNAL when specified
Commits 65924fd1, abc40924, and ebe29b66 hard-code the invocation
of yosys-abc, which fails if ABCEXTERNAL was specified during the
build. Allow tests to utilize an optional, externally specified
abc binary.

Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
2019-06-27 23:00:13 -04:00
Eddie Hung 9a371cfba9 Merge remote-tracking branch 'origin/master' into xaig 2019-06-27 12:53:23 -07:00
David Shah 71b046d639 tests: Check that Icarus can parse arch sim models
Signed-off-by: David Shah <dave@ds0.me>
2019-06-26 18:46:22 +01:00
Eddie Hung cbbd96aae9 Revert Makefile 2019-06-20 22:30:20 -07:00
Eddie Hung 32f8014e12 Fix gcc error, due to dict invalidation during recursion 2019-06-20 22:10:43 -07:00
Eddie Hung eb09ea6d54 Run simple_abc9 tests 2019-06-20 19:41:27 -07:00
Eddie Hung f81a0ed92e Merge remote-tracking branch 'origin/master' into xc7mux 2019-06-03 23:07:08 -07:00
Eddie Hung 5e75abf870 Bump ABC 2019-05-29 16:34:43 -07:00
Miodrag Milanovic 14bd40cd3d Aded one more load of .conf to support change of prefix 2019-05-29 18:57:03 +02:00
Miodrag Milanovic 040b06cb37 Remove info line in 2nd load of conf file 2019-05-28 15:43:27 +02:00
Miodrag Milanovic 1575d962fa Moved pyosys block in Makefile 2019-05-28 14:53:07 +02:00
Miodrag Milanovic 1bbcd277fb make config-afl-gcc to help creating conf file 2019-05-27 20:43:10 +02:00
Miodrag Milanovic 2ccbfc8d38 Added afl-gcc as target for fuzzer 2019-05-27 20:38:44 +02:00