Date: Wed, 03 Mar 2010 11:54:13 -0500 From: Chuck Swiger <cswiger@mac.com> To: Aaron Lewis <aaron.lewis1989@gmail.com> Cc: freebsd-questions@freebsd.org Subject: Re: Compiler Flags problem with core2 CPU Message-ID: <4B8E9435.5020804@mac.com> In-Reply-To: <4B8E830B.2000708@gmail.com> References: <4B8A63D5.90104@gmail.com> <d7195cff1003022057t594281eblf2ba394662e132dd@mail.gmail.com> <4B8E830B.2000708@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Aaron Lewis wrote:
> [root@Meilk /usr/src/sys/i386/compile/AARON]# make
> CC='cc' make -f ../../../dev/aic7xxx/aicasm/Makefile
> MAKESRCPATH=../../../dev/aic7xxx/aicasm
> Warning: Object directory not changed from original
> /usr/src/sys/i386/compile/AARON
> cc -O2 -pipe -march=i686 -ffast-math -mfpmath=sse -O3
[ ... ]
> cc1: warnings being treated as errors
> ../../../dev/aic7xxx/aicasm/aicasm.c:1: warning: SSE instruction set
> disabled, using 387 arithmetics
> *** Error code 1
>
>
> It's interesting something can work with SSE instruction , while some
> are not , Warnings are treated as errors , if we can safely disable it in some
> specific occasions.
Dude, the FreeBSD kernel doesn't use floating point, MMX, or SSE. See
sys/conf/kern.mk:
# [ ... ] Explicitly prohibit the use of SSE and other SIMD
# operations inside the kernel itself. These operations are exclusively
# reserved for user applications.
#
.if ${MACHINE_ARCH} == "i386" && ${CC} != "icc"
CFLAGS+= -mno-align-long-strings -mpreferred-stack-boundary=2 \
-mno-mmx -mno-3dnow -mno-sse -mno-sse2
INLINE_LIMIT?= 8000
.endif
Trying to override the default compiler flags to force it to use SSE is simply
not going to work.
--
-Chuck
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B8E9435.5020804>
