eal/x86: fix pedantic build
authorThomas Monjalon <thomas@monjalon.net>
Thu, 4 Apr 2019 12:53:05 +0000 (14:53 +0200)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 4 Apr 2019 15:22:06 +0000 (17:22 +0200)
When enabling pedantic compilation with CONFIG_RTE_LIBRTE_MLX5_DEBUG,
the compiler complains about non standard 128-bit integer type:

include/rte_atomic_64.h:223:3: error:
ISO C does not support ‘__int128’ types [-Werror=pedantic]

It must be marked as an extension of the standard C language
to be accepted in pedantic compilation.

Fixes: 640c5f09ef2c ("eal/x86: add 128-bit atomic compare exchange")
Cc: gage.eads@intel.com
Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Gage Eads <gage.eads@intel.com>
Tested-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/librte_eal/common/include/arch/x86/rte_atomic_64.h

index 4b83159..6232c57 100644 (file)
@@ -220,7 +220,7 @@ typedef struct {
        RTE_STD_C11
        union {
                uint64_t val[2];
-               __int128 int128;
+               __extension__ __int128 int128;
        };
 } __rte_aligned(16) rte_int128_t;