From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by dpdk.org (Postfix) with ESMTP id D7D20276C for ; Thu, 13 Jul 2017 04:17:03 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D093513D5; Wed, 12 Jul 2017 19:17:02 -0700 (PDT) Received: from localhost.localdomain.com (unknown [10.169.40.48]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id DAE3F3F3E1; Wed, 12 Jul 2017 19:17:01 -0700 (PDT) From: Herbert Guan To: dev@dpdk.org, jianbo.liu@linaro.org, jerin.jacob@caviumnetworks.com Cc: Herbert Guan Date: Thu, 13 Jul 2017 10:16:42 +0800 Message-Id: <1499912202-22117-1-git-send-email-herbert.guan@arm.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1499856619-21007-1-git-send-email-herbert.guan@arm.com> References: <1499856619-21007-1-git-send-email-herbert.guan@arm.com> Subject: [dpdk-dev] [PATCH v2] eal/armv8: fix poly64/128 compile issue in old GCC(<4.9.0) X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2017 02:17:04 -0000 Use built-in data types for unsupported poly64/128 types for GCC version lower than 4.9.0 Fixes: 3c4b4024c225 ("arch/arm: add vcopyq_laneq_u32 for old gcc") Signed-off-by: Herbert Guan --- lib/librte_eal/common/include/arch/arm/rte_vect.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/librte_eal/common/include/arch/arm/rte_vect.h b/lib/librte_eal/common/include/arch/arm/rte_vect.h index 7fec25e..782350d 100644 --- a/lib/librte_eal/common/include/arch/arm/rte_vect.h +++ b/lib/librte_eal/common/include/arch/arm/rte_vect.h @@ -101,6 +101,13 @@ #if defined(RTE_ARCH_ARM64) #if defined(RTE_TOOLCHAIN_GCC) && (GCC_VERSION < 70000) + +#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 + /* NEON intrinsic vreinterpretq_u64_p128() is supported since GCC version 7 */ static inline uint64x2_t vreinterpretq_u64_p128(poly128_t x) -- 1.8.3.1