https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107992
--- Comment #2 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> --- (In reply to Ian Lance Taylor from comment #1) > Thanks. This is happening because the data structures that Go's garbage > collector uses require that all pointers be aligned on their natural > boundaries. Unfortunately m68k only provides 2-byte alignment for 4-byte > pointers, not 4-byte alignment. I don't know if there will be a simple fix. > We could probably adjust the alignment for data structures defined in Go, > which would fix this case, but that wouldn't help with C interoperability. We're planning to switch the default alignment on m68k in both Debian and Gentoo to 4-byte alignment as the unusual 2-byte alignment causes many other projects such Qt, OpenJDK, LLVM, Mold and many more to fail on m68k. I don't think it's a feasible option to port all upstream projects to support 2-byte alignment, so we should just switch the default alignment on m68k to use the common 4-byte alignment.