From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 3F1C943D0F;
	Thu, 21 Mar 2024 19:18:16 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id C4E2D42D90;
	Thu, 21 Mar 2024 19:18:15 +0100 (CET)
Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182])
 by mails.dpdk.org (Postfix) with ESMTP id EABE442D45
 for <dev@dpdk.org>; Thu, 21 Mar 2024 19:18:14 +0100 (CET)
Received: by linux.microsoft.com (Postfix, from userid 1086)
 id 469AC20B74C0; Thu, 21 Mar 2024 11:18:14 -0700 (PDT)
DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 469AC20B74C0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com;
 s=default; t=1711045094;
 bh=tbGeyjhUeeMrgmTfP26w3/dN8jyJRgwXkFroYBWD16A=;
 h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
 b=j06qet/tDGc2dDPQlWXBATT656/KsjCEQE0JkkU1rne5LyeyuvGySyJ6QDaVeJHvp
 GNToLHZ/Ls/w0PePXOj8nuILLecYDSDp/nYFtLEXeYudN+EuFXtiegllBMLADb3Yf8
 HZMF3UmozC6YpSLmMljkwt0J+fTQm6iXGNBVzVKI=
Date: Thu, 21 Mar 2024 11:18:14 -0700
From: Tyler Retzlaff <roretzla@linux.microsoft.com>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: dev@dpdk.org, Bruce Richardson <bruce.richardson@intel.com>,
 Jasvinder Singh <jasvinder.singh@intel.com>,
 Konstantin Ananyev <konstantin.v.ananyev@yandex.ru>,
 david.marchand@redhat.com
Subject: Re: [PATCH] net: stop using mmx intrinsics
Message-ID: <20240321181814.GA14843@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
References: <1710969121-18503-1-git-send-email-roretzla@linux.microsoft.com>
 <13164815.EVyyLHbfrO@thomas>
 <20240321172707.GA1605@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
 <5822839.1B3tZ46Xf9@thomas>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <5822839.1B3tZ46Xf9@thomas>
User-Agent: Mutt/1.5.21 (2010-09-15)
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

On Thu, Mar 21, 2024 at 07:01:17PM +0100, Thomas Monjalon wrote:
> 21/03/2024 18:27, Tyler Retzlaff:
> > On Thu, Mar 21, 2024 at 06:09:01PM +0100, Thomas Monjalon wrote:
> > > 20/03/2024 22:12, Tyler Retzlaff:
> > > > +#ifdef RTE_TOOLCHAIN_MSVC
> > > > +#include <intrin.h>
> > > > +#else
> > > >  #include <x86intrin.h>
> > > > +#endif
> > > 
> > > It is not the same include in MSVC?
> > 
> > unfortunately intrin.h is vestigial in the monolithic approach. to use
> > any intrinsic you're supposed to include only the one and only true
> > header instead of vendor/arch feature specific headers.
> > 
> > > Is it something we want to wrap in a DPDK header file?
> > 
> > do you mean create a monolithic rte_intrinsic.h header that is
> > essentially
> > 
> > #ifdef MSVC
> > #include <intrin.h>
> > #else
> > #include <x86intrin.h>
> > #include <immintrin.h>
> > #include <nmmintrin.h>
> > ...
> > #endif
> > 
> > i assumed that doing something like this might be unpopular due to the
> > unnecessary namespace pollution.
> 
> We already have such a file.
> It is rte_vect.h.
> I suppose we should just make sure it is included consistently
> instead of x86intrin.h or immintrin.h
> 
> This command will show where changes are required:
> 	git grep intrin.h

there were some corner cases i can't recall, but since you identified
rte_vect.h is the preferred header let me do some experiments to see
what i can learn.  i'll either submit a series addressing it
specifically or come back with details.

thanks!

> 
>