From patchwork Tue Jul 4 12:22:30 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Monjalon X-Patchwork-Id: 26375 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 538A02A58; Tue, 4 Jul 2017 14:22:33 +0200 (CEST) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id 24318271 for ; Tue, 4 Jul 2017 14:22:32 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id C10292088C; Tue, 4 Jul 2017 08:22:31 -0400 (EDT) Received: from frontend2 ([10.202.2.161]) by compute1.internal (MEProxy); Tue, 04 Jul 2017 08:22:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-sender :x-me-sender:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=z5WHg2emhhobXDz h3zH8JHb5we5KdtNQWOXevxyKEcw=; b=LFp0uqd34UA1CcbvvrXHNSzxlM14L2/ SJBCemL+jy5LpX0RCXkg/LOSc7iv49H/5j+HeFyi7t8ApyhqsZrEurZtoHhHOqE9 ZUjEjS8/k7IBYEHJnPTCs4Hs8oqnGq4WIx9cian80xClrlZYsSulKfivjLYsl/CC 0r7o5auqdqFY= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-sender:x-me-sender:x-sasl-enc:x-sasl-enc; s= fm1; bh=z5WHg2emhhobXDzh3zH8JHb5we5KdtNQWOXevxyKEcw=; b=DM7pXFv9 C/eZHL870Eo/Wl8xaZZpK5Tyk1mQBs8KFzdrFRvACa7Er+bKNt7vO1zDf7IOXYNO Qb42VAQgXuKeLpEyPfLUdSiK4LKiZ9iKihnd4d8Z4LJvKcqVEESTCBCeE8omCa80 S8ZPQN7rNB/iC+2ltNPOIhzu5HTT2VKDcBYXJOrzGe6xp75/UQ4WQzTMpg8nyOyK aQv6YRqQW0vxER+Biak7R/XBKUZgaf1NVZ6IwR4ki2UchOgKZKfAKtmvSbyp3/U+ 7u85z1MMzCxfHZ8vHQ2xCrJDkaRQhwgHm5iljsn+BjtLEjqlyK23f8zs/W/RxkIE BBUgPtDOeFsy8g== X-ME-Sender: X-Sasl-enc: w45g5cPZWv67gT64A0oWNkAiTADBdqJFxJRoPmGli/qt 1499170951 Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id 771E52424D; Tue, 4 Jul 2017 08:22:31 -0400 (EDT) From: Thomas Monjalon To: Bruce Richardson Cc: dev@dpdk.org, Pablo de Lara Date: Tue, 04 Jul 2017 14:22:30 +0200 Message-ID: <2992653.azzla7F50o@xps> In-Reply-To: <20170620152313.107642-6-bruce.richardson@intel.com> References: <20170620152313.107642-1-bruce.richardson@intel.com> <20170620152313.107642-6-bruce.richardson@intel.com> MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH 05/18] hash: remove checks for SSE4 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 20/06/2017 17:23, Bruce Richardson: > Since SSE4 is now part of the minimum requirements for DPDK, we don't need > a fallback case to handle selection of algorithm when SSE4 is unavailable. > > Signed-off-by: Bruce Richardson > --- > lib/librte_hash/rte_cmp_x86.h | 6 ------ > lib/librte_hash/rte_cuckoo_hash.h | 2 +- > lib/librte_hash/rte_fbk_hash.h | 2 +- > lib/librte_hash/rte_hash_crc.h | 34 ++++++++++------------------------ > 4 files changed, 12 insertions(+), 32 deletions(-) You forgot thash, I am adding it: --- a/lib/librte_hash/rte_thash.h +++ b/lib/librte_hash/rte_thash.h @@ -56,11 +56,11 @@ extern "C" { #include #include -#if defined(__SSE3__) || defined(RTE_MACHINE_CPUFLAG_NEON) +#if defined(RTE_ARCH_X86) || defined(RTE_MACHINE_CPUFLAG_NEON) #include #endif -#ifdef __SSE3__ +#ifdef RTE_ARCH_X86 /* Byte swap mask used for converting IPv6 address * 4-byte chunks to CPU byte order */ @@ -134,7 +134,7 @@ struct rte_ipv6_tuple { union rte_thash_tuple { struct rte_ipv4_tuple v4; struct rte_ipv6_tuple v6; -#ifdef __SSE3__ +#ifdef RTE_ARCH_X86 } __attribute__((aligned(XMM_SIZE))); #else }; @@ -169,7 +169,7 @@ rte_convert_rss_key(const uint32_t *orig, uint32_t *targ, int len) static inline void rte_thash_load_v6_addrs(const struct ipv6_hdr *orig, union rte_thash_tuple *targ) { -#ifdef __SSE3__ +#ifdef RTE_ARCH_X86 __m128i ipv6 = _mm_loadu_si128((const __m128i *)orig->src_addr); *(__m128i *)targ->v6.src_addr = _mm_shuffle_epi8(ipv6, rte_thash_ipv6_bswap_mask);