You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.
Then build yosys on a BE architecture, e.g. ppc64 or s390x.
Once build completes, run make test to execute the test suite
Expected behavior
tests succeeds
Actual behavior
tests/techmap/shiftx2mux.ys fails with "ERROR: Called with -verify and proof did fail!!"
Please also see yosys-shiftx2mux-test.tar.gz which contains two folders containing logging and *.il files generated during the (patched as per above) test: one for x86_64 (where the test succeeds), and one for s390x, where it fails before reaching the second gate.
The text was updated successfully, but these errors were encountered:
this is an abc bug, and is also present in the upstream
abc uses bitvectors made of 32-bit words in one place and ones made of 64-bit words in another; sometimes it does a raw pointer cast between the two, completely breaking the logic on big-endian machines (and violating aliasing rules in the process on any machine)
this means that abc (and, in turn, yosys) should be considered unusably broken on big-endian machines until this issue is fixed (and, preferably, the abc codebase audited to make sure there are no other endianness issues)
this bug will be reported to upstream, but don't hold your breath; the yosys team doesn't have enough familiarity with the codebase to reasonably fix this issue ourselves
Steps to reproduce the issue
Using a recent yosys commit (e.g. 9cdc6b5), apply the following patch (suggested by @mwkmwkmwk on IRC):
Then build yosys on a BE architecture, e.g. ppc64 or s390x.
Once build completes, run
make testto execute the test suiteExpected behavior
tests succeeds
Actual behavior
tests/techmap/shiftx2mux.ysfails with "ERROR: Called with -verify and proof did fail!!"Please also see yosys-shiftx2mux-test.tar.gz which contains two folders containing logging and
*.ilfiles generated during the (patched as per above) test: one forx86_64(where the test succeeds), and one fors390x, where it fails before reaching the second gate.The text was updated successfully, but these errors were encountered: