https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88717
--- Comment #8 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> --- Author: hjl Date: Tue Jan 8 17:40:18 2019 New Revision: 267732 URL: https://gcc.gnu.org/viewcvs?rev=267732&root=gcc&view=rev Log: x86: Don't generate vzeroupper if caller passes AVX/AVX512 registers There is no need to generate vzeroupper if caller passes arguments in AVX/AVX512 registers. Tested on i686 and x86-64 with and without --with-arch=native. gcc/ PR target/88717 * config/i386/i386.c (ix86_avx_u128_mode_exit): Call ix86_avx_u128_mode_entry. gcc/testsuite/ PR target/88717 * gcc.target/i386/pr88717.c: New test. Added: trunk/gcc/testsuite/gcc.target/i386/pr88717.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.c trunk/gcc/testsuite/ChangeLog