https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89021
--- Comment #44 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> --- Author: hjl Date: Wed May 15 15:32:33 2019 New Revision: 271252 URL: https://gcc.gnu.org/viewcvs?rev=271252&root=gcc&view=rev Log: i386: Allow MMX intrinsic emulation with SSE Allow MMX intrinsic emulation with SSE/SSE2/SSSE3. Don't enable MMX ISA by default with TARGET_MMX_WITH_SSE. For pr82483-1.c and pr82483-2.c, "-mssse3 -mno-mmx" compiles in 64-bit mode since MMX intrinsics can be emulated wit SSE. gcc/ PR target/89021 * config/i386/i386-builtin.def: Enable MMX intrinsics with SSE/SSE2/SSSE3. * config/i386/i386-builtins.c (ix86_init_mmx_sse_builtins): Likewise. * config/i386/i386-expand.c (ix86_expand_builtin): Allow SSE/SSE2/SSSE3 to emulate MMX intrinsics with TARGET_MMX_WITH_SSE. * config/i386/mmintrin.h: Only require SSE2 if __MMX_WITH_SSE__ is defined. gcc/testsuite/ PR target/89021 * gcc.target/i386/pr82483-1.c: Error only on ia32. * gcc.target/i386/pr82483-2.c: Likewise. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386-builtin.def trunk/gcc/config/i386/i386-builtins.c trunk/gcc/config/i386/i386-expand.c trunk/gcc/config/i386/mmintrin.h trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.target/i386/pr82483-1.c trunk/gcc/testsuite/gcc.target/i386/pr82483-2.c