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?