Unexpected SSE4.1 (pinsrq) in libgcc_s_seh-1.dll
Nemos via Gcc-help <[email protected]> Thu, 19 Feb 2026 19:15:33 +0300
| Newsgroups | gmane.comp.gcc.help |
|---|---|
| Message-ID | <[email protected]> |
I’m building a MinGW toolchain (both cross and native builds) using GCC 15.2. During verification, I discovered that the native build’s libgcc_s_seh-1.dll contains SSE4.1 instructions (specifically pinsrq), even though SSE4.1 is explicitly disabled in the compiler configuration. cross build configure options --target=x86_64-w64-mingw32 --disable-static --enable-shared --disable-multilib --enable-languages=c,c++ --enable-threads=posix --disable-nls --with-arch=x86-64 --with-tune=generic native build configure options --target=x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --disable-static --enable-shared --disable-multilib --enable-languages=c,c++ --enable-threads=posix --disable-nls --with-gmp=/home/nemos/packages/win64/gmp-6.3.0 --with-mpfr=/home/nemos/packages/win64/mpfr-4.2.2 --with-mpc=/home/nemos/packages/win64/mpc-1.3.1 --with-arch=x86-64 --with-tune=generic Questions: Why are SSE4.1 instructions (pinsrq) present in libgcc_s_seh-1.dll when SSE4.1 is disabled in the configuration? Is this a bug in GCC’s code generation for MinGW, or is there an additional flag/setting I’m missing to disable SSE4.1? How can I ensure that the native MinGW build strictly avoids SSE4.1 instructions?