https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88671
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hjl.tools at gmail dot com --- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> --- (In reply to Uroš Bizjak from comment #2) > This is required by ABI, please see section 2.3.3 of i386 PSABI, where: > > The exceptions to parameters passed on stack are as follows: > • The first three parameters of type __m64 are passed in %mm0, %mm1, and > %mm2. > > So, clang is wrong. clang is never good at conforming to psABIs: https://bugs.llvm.org/show_bug.cgi?id=39501 There are other psABI bugs in clang.