1 # $FreeBSD: src/sys/conf/kern.mk,v 1.52 2007/05/24 21:53:42 obrien Exp $
2 # $DragonFly: src/sys/platform/pc64/conf/kern.mk,v 1.2 2008/08/29 17:07:15 dillon Exp $
5 # Warning flags for compiling the kernel and components of the kernel.
7 # For x86_64, we explicitly prohibit the use of FPU, SSE and other SIMD
8 # operations inside the kernel itself. These operations are exclusively
9 # reserved for user applications.
11 CFLAGS+= -mpreferred-stack-boundary=4
12 CFLAGS+= -fno-stack-protector
13 CFLAGS+= -mcmodel=kernel -mno-red-zone -mfpmath=387
15 CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3
17 .if ${CCVER} == "gcc44" || ${CCVER} == "gcc47"
18 CFLAGS+= -mno-ssse3 -mno-sse4.1 -mno-sse4.2 -mno-sse4 -mno-sse4a \
20 CFLAGS+= -mno-abm -mno-aes -mno-avx -mno-pclmul -mno-popcnt
23 .if ${CCVER} == "gcc47"
24 CFLAGS+= -mno-avx2 -mno-fsgsbase -mno-rdrnd -mno-f16c
25 CFLAGS+= -mno-fma -mno-fma4
26 CFLAGS+= -mno-bmi -mno-bmi2
27 CFLAGS+= -mno-xop -mno-lwp -mno-lzcnt -mno-tbm
31 CFLAGS+= -fno-asynchronous-unwind-tables -fno-omit-frame-pointer