forked from YosysHQ/yosys
-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bump fork for version 0.38 #17
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Without this it will overflow the stack when loops are present.
cxxrtl: fix typo in codegen for async set/clear
These were previously not being converted correctly leading to yosys internal cells being written to my netlist. Signed-off-by: Ethan Mahintorabi <[email protected]>
Signed-off-by: Ethan Mahintorabi <[email protected]>
If the offset is larger than the signal itself, meaning the signal is completely shifted out, it tried to extract a negative amount of bits from the old signal. This RTL pattern is suspicious since it is a complicated way of arriving at a constant value, so we warn the user.
Node.js 16 actions are deprecated. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
When inferring we allow writing to all bytes for now. Signed-off-by: YRabbit <[email protected]>
gowin: Change BYTE ENABLE handling.
Update workflows to Node.js 20
Update CHAPTER_Basics.rst
tests/various/clk2fflogic_effects.sh: fix on macOS
* Generalization of dimensions metadata (also simplifies $size et al.) * Parsing and elaboration of multidimensional packed ranges
The purpose of memtest02 in tests/simple/memory.v is to test bit select on both memory (mem1) and memory converted to registers (mem2). After 7cfae2c, mem1 was automatically converted to registers, and the test no longer worked as intended. This is fixed by adding (* nomem2reg *) to mem1.
$scopeinfo support
driver: Fix crashes on missing cli arguments
Because all objects in C++ must have non-zero size, a `value<0>` has a size of 4 despite consisting of a `uint32_t chunks[0]`. The debug item assertions were not written expecting that and prevent any debug items for such values from compiling. The C API does not define exactly what happens for a zero-width debug item, but it seems OK to say that they should refer to some unique pointer that cannot be, in actuality, read or written. This allows some techniques or optimizations that use `curr` pointers as keys and assume they correspond 1-to-1 to simulation objects.
Before this commit, `at()` and `operator[]` did the same thing, making one of them redundant. There was also a somewhat awkward `parts_at()`, which is more generic than `at()`. After this commit, `parts_at()` becomes `at()`, and `at()` becomes `operator[]`. Any quick-and-dirty accesses should use `items["name"]`, which expects a single-part item. Generic code should instead use `items.at("name")`, which will return multiple parts. Both will check for the existence of the name. This is unlikely to break downstream code since it's likely been using the shorter `operator[]`. (In any case this API is not stable.)
Fixes a bug in the handling of the recently introduced $check cells. Both $check and $print cells in clk2fflogic are handled by the same code and the existing tests for that were only using $print cells. This missed a bug where the additional A signal of $check cells that is not present on $print cells was dropped due to a typo, rendering $check cells non-functional. Also updates the tests to explicitly cover both cell types such that they would have detected the now fixed bug.
A yosys build with verific support can act as a non-verific yosys with `YOSYS_NOVERIFIC=1` in the enviornment, which is useful for quickly testing code that works with either frontend without rebuilding yosys. Before this change, this did not work with `make test` as it would only consider the build time configuration to decide whether to run tests that depend on verific support, immediately failing on those tests when the enviornment contains `YOSYS_NOVERIFIC=1`. This adds logic to the makefile that checks this enviornment variable and also exports YOSYS_NOVERIFIC=1 to the enviornment when that is present as a make variable to support `make test YOSYS_NOVERIFIC=1` invocations.
clk2fflogic: Fix handling of $check cells
tests: Support running `make test` with YOSYS_NOVERIFIC=1
vvbandeira
approved these changes
Feb 15, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.