From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH 3/6] mk: Ensure correct detection of SSE4.2 on FreeBSD Date: Thu, 17 Jul 2014 11:35:46 +0200 Message-ID: <2593913.gKODuJYKZP@xps13> References: <1404776219-6130-1-git-send-email-bruce.richardson@intel.com> <1404776219-6130-4-git-send-email-bruce.richardson@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev-VfR2kkLFssw@public.gmane.org To: Bruce Richardson Return-path: In-Reply-To: <1404776219-6130-4-git-send-email-bruce.richardson-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Hi Bruce, 2014-07-08 00:36, Bruce Richardson: > Add a special case to the native target makefile, where we check if > -march=native shows SSE4.2 support. If it does not, then not everything may > build, so we check if the hardware supports SSE4.2, and use a corei7 target > explicitly to get the SSE4.2 support. [...] > MACHINE_CFLAGS = -march=native > + > +# on FreeBSD systems, sometimes the correct cputype is not picked up. > +# To get everything to compile, we need SSE4.2 support, so check if that is > +# reported by compiler. If not, check if the CPU actually supports it, and if > +# so, set the compilation target to be a corei7, minimum target with SSE4.2 > +SSE42_SUPPORT=$(shell $(CC) -march=native -dM -E - < /dev/null | grep SSE4_2) > +ifeq ($(SSE42_SUPPORT),) > + CPU_SSE42_SUPPORT=$(shell if [ -f /var/run/dmesg.boot ] ; then grep SSE4\.2 /var/run/dmesg.boot ; fi) > + ifneq ($(CPU_SSE42_SUPPORT),) > + MACHINE_CFLAGS= -march=corei7 > + endif > +endif What do you think of this change? - CPU_SSE42_SUPPORT=$(shell if [ -f /var/run/dmesg.boot ] ; then grep SSE4\.2 /var/run/dmesg.boot ; fi) + CPU_SSE42_SUPPORT = $(shell grep SSE4\.2 /var/run/dmesg.boot 2>/dev/null) It's simpler and should produce the same result. If you agree, I'll change it before applying. Thanks -- Thomas