From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 4A9AB2C4C for ; Wed, 30 Mar 2016 15:57:57 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP; 30 Mar 2016 06:57:56 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,416,1455004800"; d="scan'208";a="677998018" Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by FMSMGA003.fm.intel.com with ESMTP; 30 Mar 2016 06:57:56 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.13]) by IRSMSX103.ger.corp.intel.com ([169.254.3.239]) with mapi id 14.03.0248.002; Wed, 30 Mar 2016 14:57:54 +0100 From: "Dumitrescu, Cristian" To: Thomas Monjalon , "dev@dpdk.org" CC: "Singh, Jasvinder" , "Zhang, Roy Fan" , "Hunt, David" Thread-Topic: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 Thread-Index: AQHRaIYLM4cIojdsNUOfQNZJxhP35p9yO+sAgAAKi3A= Date: Wed, 30 Mar 2016 13:57:54 +0000 Message-ID: <3EB4FA525960D640B5BDFFD6A3D891264797454E@IRSMSX108.ger.corp.intel.com> References: <1455605170-16137-1-git-send-email-thomas.monjalon@6wind.com> <1455605170-16137-3-git-send-email-thomas.monjalon@6wind.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYjNmY2YxOTItYjI5Ny00Zjk3LTlhNzMtMGRiNTUzNDcwOGU0IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6InVvZHhFRjZsZDBaTzNwbm5zNlR2OEcyOWhBYW9QVDhSNzI4K2hPcUoreDg9In0= x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for x86_64 without SSE4.2 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: Wed, 30 Mar 2016 13:57:57 -0000 > -----Original Message----- > From: Dumitrescu, Cristian > Sent: Wednesday, March 30, 2016 2:24 PM > To: 'Thomas Monjalon' ; dev@dpdk.org > Cc: Singh, Jasvinder ; Zhang, Roy Fan > ; Hunt, David > Subject: RE: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build fo= r > x86_64 without SSE4.2 > Importance: High >=20 >=20 >=20 > > -----Original Message----- > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Thomas Monjalon > > Sent: Tuesday, February 16, 2016 6:46 AM > > To: dev@dpdk.org > > Subject: [dpdk-dev] [PATCH v2 2/4] examples/ip_pipeline: fix build for > > x86_64 without SSE4.2 > > > > The compiler cannot use _mm_crc32_u64: > > > > examples/ip_pipeline/pipeline/hash_func.h:165:9: > > error: implicit declaration of function '_mm_crc32_u64' is invalid in C= 99 > > > > Fixes: 947024a26df7 ("examples/ip_pipeline: rework passthrough > pipeline") > > > > Signed-off-by: Thomas Monjalon > > --- > > examples/ip_pipeline/pipeline/hash_func.h | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/examples/ip_pipeline/pipeline/hash_func.h > > b/examples/ip_pipeline/pipeline/hash_func.h > > index 7846300..1953ad4 100644 > > --- a/examples/ip_pipeline/pipeline/hash_func.h > > +++ b/examples/ip_pipeline/pipeline/hash_func.h > > @@ -152,7 +152,7 @@ hash_xor_key64(void *key, __rte_unused uint32_t > > key_size, uint64_t seed) > > return (xor0 >> 32) ^ xor0; > > } > > > > -#if defined(__x86_64__) > > +#if defined(__x86_64__) && defined(RTE_CPUFLAG_SSE4_2) > > > > #include > > > > -- > > 2.7.0 >=20 > Hi Thomas, >=20 > This is not the correct fix, as RTE_CPUFLAG_SSE4_2 is a flag that can onl= y be > tested at run-time (as result of calling function rte_cpu_get_flag_enable= d()), > not at build-time. >=20 > The reason it appears to fix the build issue you are mentioning is the fa= ct that > this change results in disabling the __x86_64__ code branch. >=20 > We need to revert this patch and look for a better option. >=20 > What is the compiler that generates the build issue you are mentioning? W= e > could not reproduce it with gcc 5 (gcc 5.3.1). >=20 > Thanks, > Cristian I think the correct fix is: #if defined(__x86_64__) && (defined(RTE_MACHINE_CPUFLAG_SSE4_2) || defined(= RTE_MACHINE_CPUFLAG_CRC32)) We'll test it and send a patch asap. Thanks, Cristian