Python requires 32-bit alignment now - was: Re: Tuple and changes for m68k with -malign-int
Hi,
On Sat, 2023-08-26 at 12:51 +0200, John Paul Adrian Glaubitz wrote:
> > The Debian m68k maintainers proposed building their packages with -malign-int
> > last year, aligning to 32-bit instead of 16-bit, which improves compatibility
> > with some projects and should give better performance on 68020+, at the cost
> > of slightly increased memory usage. The mold linker is at least one project
> > that has been shown to work after making this change where it previously
> > didn't.
>
> Not only mold but also most notably the following projects:
>
> - LLVM
> - Firebird Database
> - OpenJDK
> - Various Qt packages
We can now add CPython to this list as 3.13 requires 32-bit alignment [1]:
In file included from ../Include/internal/pycore_backoff.h:12,
from ../Include/internal/pycore_code.h:474,
from ../Include/internal/pycore_interp.h:16,
from ../Include/internal/pycore_runtime.h:17,
from ../Include/internal/pycore_pystate.h:12,
from ../Include/internal/pycore_critical_section.h:9,
from ../Python/critical_section.c:4:
../Python/critical_section.c:6:1: error: static assertion failed: "critical section must be aligned to at least 4 bytes"
6 | static_assert(_Alignof(_PyCriticalSection) >= 4,
| ^~~~~~~~~~~~~
We should really make the switch now. It's certainly not getting better.
Adrian
> [1] https://buildd.debian.org/status/fetch.php?pkg=python3.13&arch=m68k&ver=3.13.0%7Eb1-2&stamp=1715773703&raw=0
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Reply to: