From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from wes1-so2.wedos.net (wes1-so2.wedos.net [46.28.106.16]) by dpdk.org (Postfix) with ESMTP id 180CA2C06 for ; Fri, 18 Mar 2016 15:11:13 +0100 (CET) Received: from pcviktorin.fit.vutbr.cz (pcviktorin.fit.vutbr.cz [147.229.13.147]) by wes1-so2.wedos.net (Postfix) with ESMTPSA id 3qRRwJ5lh7zBVW; Fri, 18 Mar 2016 15:11:12 +0100 (CET) Date: Fri, 18 Mar 2016 15:11:18 +0100 From: Jan Viktorin To: Thomas Monjalon Cc: Jerin Jacob , Tomasz Kulasek , dev@dpdk.org, jianbo.liu@linaro.org Message-ID: <20160318151118.7e255355@pcviktorin.fit.vutbr.cz> In-Reply-To: <18259292.OJteoyVp0E@xps13> References: <20160318130019.4715e5d5@pcviktorin.fit.vutbr.cz> <18259292.OJteoyVp0E@xps13> Organization: RehiveTech MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH] arm: detect NEON by RTE_MACHINE_CPUFLAG_NEON flag only X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Mar 2016 14:11:13 -0000 On Fri, 18 Mar 2016 14:49:57 +0100 Thomas Monjalon wrote: > 2016-03-18 13:00, Jan Viktorin: > > The RTE_MACHINE_CPUFLAG_NEON was only a result of the gcc testing. > > However, the target CPU may not support NEON or the user can disable to > > use it (as it does not always improve the performance). > > > > The RTE_MACHINE_CPUFLAG_NEON detection is now based on both, the > > __ARM_NEON_FP feature from gcc and CONFIG_RTE_ARCH_ARM_NEON from > > the .config. The memcpy implemention is driven by > > RTE_MACHINE_CPUFLAG_NEON, so the reason to disable neon is hidden for > > the actual code. > > > > Signed-off-by: Jan Viktorin > > --- > > > > I can also include this one: > > > > examples/l3fwd/l3fwd_em.c:253:#elif defined(__ARM_NEON) > > Yes please. > I will set my patch as superseded. > OK, I will send v2. By the way, for Intel-related code, it is also common to check eg. __SSE2__ instead of the RTE_MACHINE_CPUFLAG_SSE2. That's probably a source of confusion for new code, newcomers and adding new platforms. As for me, I've had known about the CPUFLAGs... But I could hardly see those in the DPDK code. It looks like the features are detected by unused... And IMHO this is the reason why we are confused here. Regards Jan