https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97140
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by H.J. Lu <h...@gcc.gnu.org>: https://gcc.gnu.org/g:6058b874ef98af1104a5cb4618e1f3bfa7e3761c commit r11-4632-g6058b874ef98af1104a5cb4618e1f3bfa7e3761c Author: H.J. Lu <hjl.to...@gmail.com> Date: Mon Sep 21 05:33:46 2020 -0700 x86: Also require MMX for __builtin_ia32_maskmovq MMX emulation with SEE is implemented at MMX intrinsic level, not at MMX instruction level. _mm_maskmove_si64 intrinsic for "MASKMOVQ mm1, mm2" is emulated with __builtin_ia32_maskmovdqu. Since SSE "MASKMOVQ mm1, mm2" builtin function, __builtin_ia32_maskmovq, can't be emulated with XMM registers, make __builtin_ia32_maskmovq also require MMX instead of SSE only. gcc/ PR target/97140 * config/i386/i386-expand.c (ix86_expand_builtin): Require MMX for __builtin_ia32_maskmovq. gcc/testsuite/ PR target/97140 * gcc.target/i386/pr97140.c: New test.