diff options
author | H. Peter Anvin <hpa@linux.intel.com> | 2013-12-09 18:43:38 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2013-12-09 18:52:39 -0500 |
commit | 8b3b005d675726e38bc504d2e35a991e55819155 (patch) | |
tree | 1141dafd5c7c9395329f5ae2ba8e676ea6e2df6f /arch/x86/Makefile | |
parent | 374b105797c3d4f29c685f3be535c35f5689b30e (diff) |
x86, build: Pass in additional -mno-mmx, -mno-sse options
In checkin
5551a34e5aea x86-64, build: Always pass in -mno-sse
we unconditionally added -mno-sse to the main build, to keep newer
compilers from generating SSE instructions from autovectorization.
However, this did not extend to the special environments
(arch/x86/boot, arch/x86/boot/compressed, and arch/x86/realmode/rm).
Add -mno-sse to the compiler command line for these environments, and
add -mno-mmx to all the environments as well, as we don't want a
compiler to generate MMX code either.
This patch also removes a $(cc-option) call for -m32, since we have
long since stopped supporting compilers too old for the -m32 option,
and in fact hardcode it in other places in the Makefiles.
Reported-by: Kevin B. Smith <kevin.b.smith@intel.com>
Cc: Sunil K. Pandey <sunil.k.pandey@intel.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: H. J. Lu <hjl.tools@gmail.com>
Link: http://lkml.kernel.org/n/tip-j21wzqv790q834n7yc6g80j1@git.kernel.org
Cc: <stable@vger.kernel.org> # build fix only
Diffstat (limited to 'arch/x86/Makefile')
-rw-r--r-- | arch/x86/Makefile | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/x86/Makefile b/arch/x86/Makefile index eda00f9be0cf..57d021507120 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile | |||
@@ -31,8 +31,8 @@ ifeq ($(CONFIG_X86_32),y) | |||
31 | 31 | ||
32 | KBUILD_CFLAGS += -msoft-float -mregparm=3 -freg-struct-return | 32 | KBUILD_CFLAGS += -msoft-float -mregparm=3 -freg-struct-return |
33 | 33 | ||
34 | # Don't autogenerate SSE instructions | 34 | # Don't autogenerate MMX or SSE instructions |
35 | KBUILD_CFLAGS += -mno-sse | 35 | KBUILD_CFLAGS += -mno-mmx -mno-sse |
36 | 36 | ||
37 | # Never want PIC in a 32-bit kernel, prevent breakage with GCC built | 37 | # Never want PIC in a 32-bit kernel, prevent breakage with GCC built |
38 | # with nonstandard options | 38 | # with nonstandard options |
@@ -60,8 +60,8 @@ else | |||
60 | KBUILD_AFLAGS += -m64 | 60 | KBUILD_AFLAGS += -m64 |
61 | KBUILD_CFLAGS += -m64 | 61 | KBUILD_CFLAGS += -m64 |
62 | 62 | ||
63 | # Don't autogenerate SSE instructions | 63 | # Don't autogenerate MMX or SSE instructions |
64 | KBUILD_CFLAGS += -mno-sse | 64 | KBUILD_CFLAGS += -mno-mmx -mno-sse |
65 | 65 | ||
66 | # Use -mpreferred-stack-boundary=3 if supported. | 66 | # Use -mpreferred-stack-boundary=3 if supported. |
67 | KBUILD_CFLAGS += $(call cc-option,-mpreferred-stack-boundary=3) | 67 | KBUILD_CFLAGS += $(call cc-option,-mpreferred-stack-boundary=3) |