My work on SIMD stuff in kf is now blocked on what seems to be a compiler error. Compiling with -march=native gives an exe that crashes wine with a page fault on (-1). I have submitted a small test case to the Debian bug tracker.

Debian mingw cross-compilers are still on gcc-8, hopefully they will upgrade to gcc-9 at some point. Maybe it fixes this problem, I've heard tell that it fixes the mingw C++ std::thread issues (apparently Arch can cross-compile OpenEXR without the hacks I needed).

Maybe next week I will try to install a minimal Arch in a chroot and see.


Turns out is an upstream that hasn't been fixed despite being reported in 2012. Windows 64bit is aligned to 16 bytes only, and some part of GCC generates vector move instructions that require 32 bytes. Problem doesn't occur on Linux as stack can be re-aligned there, some Windows-specific stuff I don't understand means that that isn't possible there.

Currently rebuilding gcc-mingw-w64 Debian package with an to replace all to vector move in the i386+mmx+sse machine descriptions.

Sign in to participate in the conversation

Hometown is adapted from Mastodon, a decentralized social network with no ads, no corporate surveillance, and ethical design.