kernel make noise with clang suppression
Anonymous
swell.k at gmail.com
Thu Jun 10 19:29:20 UTC 2010
Matthew Jacob <mj at feral.com> writes:
> Comments? (yes, I know -fformat-extensions have just been added...)
>
>
>
> diff -r ea5e09d013e7 sys/conf/kern.mk
> --- a/sys/conf/kern.mk Thu Jun 10 07:40:51 2010 -0700
> +++ b/sys/conf/kern.mk Thu Jun 10 11:35:50 2010 -0700
> @@ -63,9 +67,15 @@
> # reserved for user applications.
> #
> .if ${MACHINE_ARCH} == "amd64"
> +.if ${CC} == "clang"
> +CFLAGS+= -mcmodel=kernel -mno-red-zone \
> + -mno-sse -mno-sse2 -mno-sse3 -mno-mmx -mno-3dnow \
Shouldn't be there all supported -msse* by clang? I for one have ssse3
and sse4.1 that are not supported by basegcc.
$ clang -dM -E -march=native - <&- | awk '/SSE/ && !/MATH/'
#define __SSE2__ 1
#define __SSE3__ 1
#define __SSE4_1__ 1
#define __SSE__ 1
#define __SSSE3__ 1
If my guess is right then extracting possible GCC flags should be enough
$ gcc45 -Q --help=target -march=native | grep 'sse[[:digit:]].*'
-mno-sse4 [disabled]
-msse2 [enabled]
-msse2avx [disabled]
-msse3 [enabled]
-msse4 [disabled]
-msse4.1 [enabled]
-msse4.2 [disabled]
-msse4a [disabled]
-mssse3 [enabled]
and you're missing only `-mno-ssse3 -mno-sse4 -mno-sse4a'.
> + -msoft-float -fno-asynchronous-unwind-tables
> +.else
> CFLAGS+= -mcmodel=kernel -mno-red-zone \
> -mfpmath=387 -mno-sse -mno-sse2 -mno-sse3 -mno-mmx -mno-3dnow \
> -msoft-float -fno-asynchronous-unwind-tables
> +.endif
> INLINE_LIMIT?= 8000
> .endif
>
More information about the freebsd-current
mailing list