aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* tests: add #2042 testcaseEddie Hung2020-05-111-0/+12
|
* Setup tests/verilog properlyEddie Hung2020-05-113-0/+24
|
* Merge pull request #2038 from nakengelhardt/no-libdir-flagClaire Wolf2020-05-081-2/+1
|\ | | | | Remove yosys libdir from LDFLAGS (and fix a typo)
| * Remove yosys libdir from LDFLAGS (and fix a typo)N. Engelhardt2020-05-071-2/+1
| |
* | Fix clang compiler warningClaire Wolf2020-05-081-2/+2
| | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
* | Merge pull request #2022 from Xiretza/fallthroughswhitequark2020-05-085-9/+26
|\ \ | | | | | | Avoid switch fall-through warnings
| * | Reorder cases to avoid fall-through warningXiretza2020-05-071-3/+3
| | | | | | | | | | | | | | | | | | log_assert(false) never returns and thus can't fall through, but gcc doesn't seem to think that far. Making it the last case avoids the problem entirely.
| * | Add YS_FALLTHROUGH macro to mark case fall-throughXiretza2020-05-075-6/+23
| | | | | | | | | | | | | | | C++17 introduced [[fallthrough]], GCC and clang had their own vendored attributes before that. MSVC doesn't seem to have such a warning at all.
* | | intel_alm: direct LUTRAM cell instantiationDan Ravensloft2020-05-079-52/+163
| |/ |/| | | | | | | | | | | | | | | | | By instantiating the LUTRAM cell directly, we avoid a trip through altsyncram, which speeds up Quartus synthesis time. This also gives a little more flexibility, as Yosys can build RAMs out of individual 32x1 LUTRAM cells. While working on this, I discovered that the mem_init0 parameter of <family>_mlab_cell gets ignored by Quartus.
* | Merge pull request #2005 from YosysHQ/claire/fix1990Claire Wolf2020-05-079-19/+142
|\ \ | | | | | | Add "nowrshmsk" attribute, fix shift-and-mask bit slice write for signed offset
| * | Fix the other "opt_expr -fine" bug introduced in 213a89558Claire Wolf2020-05-021-7/+19
| | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * | Add plusargs for output files in test_autotb outputClaire Wolf2020-05-021-3/+10
| | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * | Bugfix in partsel.v signed indices test casesClaire Wolf2020-05-021-2/+2
| | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * | Fix handling of signed indices in bit slicesClaire Wolf2020-05-021-3/+8
| | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * | Add tests based on the test case from #1990Claire Wolf2020-05-021-0/+46
| | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * | Add AST_SELFSZ and improve handling of bit slicesClaire Wolf2020-05-025-7/+22
| | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * | Add "nowrshmsk" attribute, fix shift-and-mask bit slice write for signed ↵Claire Wolf2020-05-026-7/+57
| | | | | | | | | | | | | | | | | | offset, fixes #1990 Signed-off-by: Claire Wolf <claire@symbioticeda.com>
* | | Merge pull request #2034 from YosysHQ/eddie/abc_remoteEddie Hung2020-05-071-1/+1
|\ \ \ | |_|/ |/| | Makefile: git fetch $(ABCURL) explicitly for local ABC checkout
| * | Makefile: git fetch all commits from $(ABCURL) repoEddie Hung2020-05-061-1/+1
| | |
* | | Merge pull request #2028 from zachjs/masterEddie Hung2020-05-063-1/+23
|\ \ \ | |/ / |/| | verilog: allow null gen-if then block
| * | verilog: allow null gen-if then blockZachary Snow2020-05-063-1/+23
| | |
* | | Merge pull request #2025 from YosysHQ/eddie/frontend_cleanupEddie Hung2020-05-057-31/+34
|\ \ \ | | | | | | | | frontend: cleanup to use more ID::*, more dict<> instead of map<>
| * | | frontend: cleanup to use more ID::*, more dict<> instead of map<>Eddie Hung2020-05-047-31/+34
| |/ /
* | | Merge pull request #2012 from whitequark/fix-wasi-abc-buildwhitequark2020-05-051-3/+3
|\ \ \ | | | | | | | | Fix WASI builds with abc enabled
| * | | Update ABC to include WASI support fixes.whitequark2020-05-021-1/+1
| | | |
| * | | Fix WASI builds with abc enabled.whitequark2020-05-011-2/+2
| | | | | | | | | | | | | | | | This PR works around #2011.
* | | | Merge pull request #2026 from YosysHQ/eddie/scratchpad_abc9_WEddie Hung2020-05-053-11/+34
|\ \ \ \ | | | | | | | | | | synth_ice40/ecp5/xilinx: allow abc9.W to be overridden via scratchpad
| * | | | synth_ice40/ecp5/xilinx: allow abc9.W to be overridden via scratchpadEddie Hung2020-05-043-11/+34
| | |/ / | |/| |
* | | | Merge pull request #2024 from YosysHQ/eddie/primitive_srcEddie Hung2020-05-053-2/+22
|\ \ \ \ | | | | | | | | | | verilog: set src attribute for primitives
| * | | | verilog: set src attribute for primitivesEddie Hung2020-05-042-2/+6
| | | | |
| * | | | tests: add tests for primitives' srcEddie Hung2020-05-041-0/+16
| |/ / /
* | | | Merge pull request #2023 from YosysHQ/eddie/specify_srcEddie Hung2020-05-052-18/+26
|\ \ \ \ | |/ / / |/| | | verilog: fix specify src attribute
| * | | verilog: fix specify src attributeEddie Hung2020-05-042-18/+26
|/ / /
* | | Merge pull request #1996 from boqwxp/rtlil_source_locationsEddie Hung2020-05-041-13/+13
|\ \ \ | | | | | | | | frontend: Include complete source location instead of just `location.first_line` in `frontends/ast/genrtlil.cc`.
| * | | frontend: Include complete source location instead of just ↵Alberto Gonzalez2020-05-011-13/+13
| | | | | | | | | | | | | | | | `location.first_line` in `frontends/ast/genrtlil.cc`.
* | | | Merge pull request #2000 from whitequark/log_error-trapwhitequark2020-05-032-3/+44
|\ \ \ \ | | | | | | | | | | kernel: Trap in `log_error()` when a debugger is attached
| * | | | kernel: Trap in `log_error()` when a debugger is attached.whitequark2020-05-032-3/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The workflow of debugging fatal pass errors in Yosys is flawed in three ways: 1. Running Yosys under a debugger is sufficient for the debugger to catch some fatal errors (segfaults, aborts, STL exceptions) but not others (`log_error()`, `log_cmd_error()`). This is neither obvious nor easy to remember. 2. To catch Yosys-specific fatal errors, it is necessary to set a breakpoint at `logv_error_with_prefix()`, or at least, `logv_error()`. This is neither obvious nor easy to remember, and GDB's autocomplete takes many seconds to suggest function names due to the large amount of symbols in Yosys. 3. If a breakpoint is not set and Yosys encounters with such a fatal error, the process terminates. When debugging a crash that takes a long time to reproduce (or a nondeterministic crash) this can waste a significant amount of time. To solve this problem, add a macro `YS_DEBUGTRAP` that acts as a hard breakpoint (if available), and a macro `YS_DEBUGTRAP_IF_DEBUGGING` that acts as a hard breakpoint only if debugger is present. Then, use `YS_DEBUGTRAP_IF_DEBUGGING` in `logv_error_with_prefix()` to obviate the need for a breakpoint on nearly every platform. Co-Authored-By: Alberto Gonzalez <boqwxp@airmail.cc>
* | | | | Merge pull request #2014 from YosysHQ/claire/fixoptaluClaire Wolf2020-05-032-7/+31
|\ \ \ \ \ | | | | | | | | | | | | Fix the other "opt_expr -fine" bug introduced in 213a89558
| * | | | | test: add test for #2014Eddie Hung2020-05-021-0/+12
| | | | | |
| * | | | | Fix the other "opt_expr -fine" bug introduced in 213a89558Claire Wolf2020-05-021-7/+19
| | |_|_|/ | |/| | | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
* | | | | Merge pull request #2013 from YosysHQ/eddie/aiger_fixesEddie Hung2020-05-026-42/+101
|\ \ \ \ \ | |/ / / / |/| | | | aiger: fixes for ports that have start_offset != 0
| * | | | abc9_ops: -reintegrate to be sensitive to start_offset tooEddie Hung2020-05-021-3/+5
| | | | |
| * | | | tests: aiger test for wire->start_offset != 0Eddie Hung2020-05-022-0/+41
| | | | |
| * | | | aiger: fixes for ports that have start_offset != 0Eddie Hung2020-05-023-39/+55
|/ / / /
* | | | Merge pull request #2010 from YosysHQ/claire/fixoptClaire Wolf2020-05-022-7/+29
|\ \ \ \ | |_|_|/ |/| | | Fix "opt_expr -fine" bug introduced in 213a89558
| * | | Add testcase for #2010Eddie Hung2020-05-011-0/+10
| | | |
| * | | Fix "opt_expr -fine" bug introduced in 213a89558Claire Wolf2020-05-011-7/+19
| | | | | | | | | | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
* | | | Merge pull request #2001 from whitequark/wasiwhitequark2020-05-0117-29/+166
|\ \ \ \ | |/ / / |/| | | Add WASI platform support
| * | | Add WASI platform support.whitequark2020-04-3017-30/+167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge pull request #1997 from whitequark/document-ootbClaire Wolf2020-05-014-14/+29
|\ \ \ \ | | | | | | | | | | Explain how to do out-of-tree builds in README