Bug#1025150: yosys: mips64el build failure fix
Scott Ashcroft
scott.ashcroft at hotmail.com
Wed Nov 30 10:54:18 GMT 2022
Package: yosys
Version: 0.23-3
Hi,
I've done some work on why the mips64el build fails.
The issue is that the test script tests/sat/grom.ys makes yosys core in
libs/fst/fstapi.cc:fstGetUint32
Looking at the code it is clear that, when FST_DO_MISALIGNED_OPS is not
defined, an address on the stack is returned to calling function.
Because the Debian build uses various hardening flags to protect
accesses to the stack that makes a segfault.
The quick fix appears to be to add:
-DFST_DO_MISALIGNED_OPS
to CPPFLAGS. (i386 and amd64 already have this hardwired in the code.)
I've tested this best I could by cross-compiling and running the binary
under qemu. It passed all the tests in tests/sat.
The real fix would be to either assume that all architectures can run
with FST_DO_MISALIGNED_OPS and remove the broken code or fix
fstGetUint32 so it returns memory allocated correctly, but either of
those is a job for upstream.
Cheers,
Scott
More information about the debian-science-maintainers
mailing list