Skip site navigation (1)Skip section navigation (2)
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>