aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/Makefile')
-rw-r--r--arch/x86/Makefile11
1 files changed, 8 insertions, 3 deletions
diff --git a/arch/x86/Makefile b/arch/x86/Makefile
index 7f233461a9cd..eb84621481f6 100644
--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -34,12 +34,13 @@ M16_CFLAGS := $(call cc-option, -m16, $(CODE16GCC_CFLAGS))
34REALMODE_CFLAGS := $(M16_CFLAGS) -g -Os -DDISABLE_BRANCH_PROFILING \ 34REALMODE_CFLAGS := $(M16_CFLAGS) -g -Os -DDISABLE_BRANCH_PROFILING \
35 -Wall -Wstrict-prototypes -march=i386 -mregparm=3 \ 35 -Wall -Wstrict-prototypes -march=i386 -mregparm=3 \
36 -fno-strict-aliasing -fomit-frame-pointer -fno-pic \ 36 -fno-strict-aliasing -fomit-frame-pointer -fno-pic \
37 -mno-mmx -mno-sse 37 -mno-mmx -mno-sse $(call cc-option,-fcf-protection=none)
38 38
39REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -ffreestanding) 39REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -ffreestanding)
40REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -fno-stack-protector) 40REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -fno-stack-protector)
41REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -Wno-address-of-packed-member) 41REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -Wno-address-of-packed-member)
42REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), $(cc_stack_align4)) 42REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), $(cc_stack_align4))
43REALMODE_CFLAGS += $(CLANG_FLAGS)
43export REALMODE_CFLAGS 44export REALMODE_CFLAGS
44 45
45# BITS is used as extension for files which are available in a 32 bit 46# BITS is used as extension for files which are available in a 32 bit
@@ -61,6 +62,9 @@ endif
61KBUILD_CFLAGS += -mno-sse -mno-mmx -mno-sse2 -mno-3dnow 62KBUILD_CFLAGS += -mno-sse -mno-mmx -mno-sse2 -mno-3dnow
62KBUILD_CFLAGS += $(call cc-option,-mno-avx,) 63KBUILD_CFLAGS += $(call cc-option,-mno-avx,)
63 64
65# Intel CET isn't enabled in the kernel
66KBUILD_CFLAGS += $(call cc-option,-fcf-protection=none)
67
64ifeq ($(CONFIG_X86_32),y) 68ifeq ($(CONFIG_X86_32),y)
65 BITS := 32 69 BITS := 32
66 UTS_MACHINE := i386 70 UTS_MACHINE := i386
@@ -217,8 +221,9 @@ KBUILD_LDFLAGS += $(call ld-option, -z max-page-size=0x200000)
217endif 221endif
218 222
219ifdef CONFIG_LTO_CLANG 223ifdef CONFIG_LTO_CLANG
220KBUILD_LDFLAGS += -plugin-opt=-code-model=kernel \ 224ifeq ($(shell test $(CONFIG_LLD_VERSION) -lt 130000; echo $$?),0)
221 -plugin-opt=-stack-alignment=$(if $(CONFIG_X86_32),4,8) 225KBUILD_LDFLAGS += -plugin-opt=-stack-alignment=$(if $(CONFIG_X86_32),4,8)
226endif
222endif 227endif
223 228
224# Speed up the build 229# Speed up the build