From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH v2] eal/armv8: fix poly64/128 compile issue in old GCC(<4.9.0) Date: Wed, 19 Jul 2017 15:31:11 +0300 Message-ID: <7214394.Gg28SKYvWX@xps> References: <1499856619-21007-1-git-send-email-herbert.guan@arm.com> <11032881.QA85Xq1nMD@xps> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org, jianbo.liu@linaro.org, jerin.jacob@caviumnetworks.com, nelio.laranjeiro@6wind.com To: Herbert Guan Return-path: Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id CB210231E for ; Wed, 19 Jul 2017 14:31:13 +0200 (CEST) In-Reply-To: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 19/07/2017 11:21, Herbert Guan: > From: Thomas Monjalon [mailto:thomas@monjalon.net] > > 13/07/2017 05:16, Herbert Guan: > > > --- a/lib/librte_eal/common/include/arch/arm/rte_vect.h > > > +++ b/lib/librte_eal/common/include/arch/arm/rte_vect.h > > > +#if (GCC_VERSION < 40900) > > > +typedef uint64_t poly64_t; > > > +typedef uint64x2_t poly64x2_t; > > > +typedef uint8_t poly128_t __attribute__((vector_size(16), > > > aligned(16))); > > > +#endif > > > > I think a better fix would be to switch to DPDK types > > like rte_v128u8_t. > > Thanks a lot for your review and comment. > But I have some concern in this approach. "poly128_t" is for > ARM64 platform only and in fact it's more likely that rte_v128u8_t > (generic DPDK data type) could be defined from poly128_t > (ARM data type) which seems more reasonable. How poly128_t is different from rte_v128u8_t? You are defining poly128_t as (vector_size(16),aligned(16)) and rte_v128u8_t is exactly that. Is it interpreted differently with newer compilers? In that case, you could at least fallback on rte_v128u8_t.