> -----Original Message----- > From: Eads, Gage > Sent: Thursday, April 4, 2019 7:23 AM > To: 'Thomas Monjalon' <tho...@monjalon.net>; Yigit, Ferruh > <ferruh.yi...@intel.com> > Cc: Shahaf Shuler <shah...@mellanox.com>; Matan Azrad > <ma...@mellanox.com>; Yongseok Koh <ys...@mellanox.com>; > dev@dpdk.org; olivier.m...@6wind.com; arybche...@solarflare.com; > Richardson, Bruce <bruce.richard...@intel.com>; Ananyev, Konstantin > <konstantin.anan...@intel.com>; gavin...@arm.com; > honnappa.nagaraha...@arm.com; n...@arm.com; > chao...@linux.vnet.ibm.com; jer...@marvell.com; > hemant.agra...@nxp.com > Subject: RE: [dpdk-dev] [PATCH v6] eal/x86: add 128-bit atomic compare > exchange > > > -----Original Message----- > > From: Thomas Monjalon [mailto:tho...@monjalon.net] > > Sent: Thursday, April 4, 2019 7:18 AM > > To: Eads, Gage <gage.e...@intel.com>; Yigit, Ferruh > > <ferruh.yi...@intel.com> > > Cc: Shahaf Shuler <shah...@mellanox.com>; Matan Azrad > > <ma...@mellanox.com>; Yongseok Koh <ys...@mellanox.com>; > dev@dpdk.org; > > olivier.m...@6wind.com; arybche...@solarflare.com; Richardson, Bruce > > <bruce.richard...@intel.com>; Ananyev, Konstantin > > <konstantin.anan...@intel.com>; gavin...@arm.com; > > honnappa.nagaraha...@arm.com; n...@arm.com; > chao...@linux.vnet.ibm.com; > > jer...@marvell.com; hemant.agra...@nxp.com > > Subject: Re: [dpdk-dev] [PATCH v6] eal/x86: add 128-bit atomic compare > > exchange > > > > 04/04/2019 14:14, Eads, Gage: > > > From: Thomas Monjalon [mailto:tho...@monjalon.net] > > > > 04/04/2019 14:08, Thomas Monjalon: > > > > > 04/04/2019 13:47, Ferruh Yigit: > > > > > > .../dpdk/x86_64-native-linuxapp- > gcc/include/rte_atomic_64.h:223:3: > > > > > > error: ISO C does not support ‘__int128’ types > > > > > > [-Werror=pedantic] > > > > > > > > > > We can try this kind of workaround (disable pedantic locally): > > > > > > > > > > > > https://github.com/HowardHinnant/date/pull/38/commits/177032852d5b46 > > > > 14 > > > > > 112ca1ab3ef42d6b41824816 > > > > > > > > Or better: > > > > __extension__ typedef __int128 int128; > > > > > > > > > > Taking that one step further -- RTE_STD_C11 evaluates to > > > __extension__ > > (when the STD C version is sufficiently old). > > > > I don't think __int128 is part of C11. Is it? > > You're right, this is a compiler extension. Using '__extension__' makes more > sense.
FYI, __int128 was added in GCC 4.6 (and DPDK's minimum version is currently 4.9).