[Bug target/87522] LTO incorrectly merges target specific options
hjl at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Oct 5 11:30:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87522
--- Comment #3 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> ---
Author: hjl
Date: Fri Oct 5 11:29:44 2018
New Revision: 264864
URL: https://gcc.gnu.org/viewcvs?rev=264864&root=gcc&view=rev
Log:
i386: Don't pass -msse2avx to assembler for -mavx
With
gcc -O2 -fPIC -flto -g -c -o a.o a.c
gcc -O2 -fPIC -flto -g -mavx -c -o b.o b.c
gcc -shared -O2 -fPIC -flto -g -o lib1.so a.o b.o
LTO correctly generates AVX for b.o and SSE for a.o. But the GCC driver
passes -msse2avx to assembler, which encodes SSE instructions as AVX
instructions. We shouldn't pass -msse2avx to assembler for -mavx.
PR target/87522
* config/i386/gnu-user.h (ASM_SPEC): Don't pass -msse2avx to
assembler for -mavx.
* config/i386/gnu-user64.h (ASM_SPEC): Likewise.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/gnu-user.h
trunk/gcc/config/i386/gnu-user64.h
More information about the Gcc-bugs
mailing list