diff options
author | Khem Raj <raj.khem@gmail.com> | 2016-04-02 21:55:25 -0700 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2016-04-09 22:14:24 -0400 |
commit | 1a5d01e79e40485e2e78ceb25f124a5ee31415fc (patch) | |
tree | 3ac2642323dd0f25c3b78ea255b04b39dc5afd6b | |
parent | ef9ec897605ebb1422f1ddae26c944e739d2a660 (diff) | |
download | glibc-1a5d01e79e40485e2e78ceb25f124a5ee31415fc.zip glibc-1a5d01e79e40485e2e78ceb25f124a5ee31415fc.tar.gz glibc-1a5d01e79e40485e2e78ceb25f124a5ee31415fc.tar.bz2 |
When disabling SSE, make sure -fpmath is not set to use SSE either
This fixes errors when we inject sse options through CFLAGS and now
that we have -Werror turned on by default this warning turns into an
error on x86:
$ gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -x c /dev/null -S -mno-sse -mno-mmx
/dev/null:1:0: warning: SSE instruction set disabled, using 387 arithmetics
Where as:
$ gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -x c /dev/null -S -mno-sse -mno-mmx -mfpmath=387
Generates no warnings.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | sysdeps/i386/Makefile | 3 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,9 @@ +2016-04-09 Khem Raj <raj.khem@gmail.com> + + [BZ #17950] + * sysdeps/i386/Makefile [$(subdir) == elf] (CFLAGS-.os): + Add -mfpmath=387. + 2016-04-09 Mike Frysinger <vapier@gentoo.org> * sysdeps/i386/configure.ac: Change == to = when calling test. diff --git a/sysdeps/i386/Makefile b/sysdeps/i386/Makefile index 168512f..6c91842 100644 --- a/sysdeps/i386/Makefile +++ b/sysdeps/i386/Makefile @@ -88,8 +88,9 @@ ifeq ($(subdir),elf) # Make sure no code in ld.so uses mm/xmm/ymm/zmm registers on i386 since # the first 3 mm/xmm/ymm/zmm registers are used to pass vector parameters # which must be preserved. +# With SSE disabled, ensure -fpmath is not set to use sse either. CFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\ - -mno-sse -mno-mmx) + -mno-sse -mno-mmx -mfpmath=387) tests-special += $(objpfx)tst-ld-sse-use.out $(objpfx)tst-ld-sse-use.out: ../sysdeps/i386/tst-ld-sse-use.sh $(objpfx)ld.so |