[dpdk-dev] [PATCH v2 1/6] lib/eal: add a common wrapper for restricted pointers

Ruifeng Wang Ruifeng.Wang at arm.com
Tue Jul 7 04:40:45 CEST 2020


> -----Original Message-----
> From: Joyce Kong <joyce.kong at arm.com>
> Sent: Monday, July 6, 2020 3:49 PM
> To: maxime.coquelin at redhat.com; jerinj at marvell.com;
> zhihong.wang at intel.com; xiaolong.ye at intel.com; beilei.xing at intel.com;
> jia.guo at intel.com; john.mcnamara at intel.com; matan at mellanox.com;
> shahafs at mellanox.com; viacheslavo at mellanox.com; Honnappa Nagarahalli
> <Honnappa.Nagarahalli at arm.com>; Phil Yang <Phil.Yang at arm.com>;
> Ruifeng Wang <Ruifeng.Wang at arm.com>
> Cc: dev at dpdk.org; nd <nd at arm.com>
> Subject: [PATCH v2 1/6] lib/eal: add a common wrapper for restricted
> pointers
> 
> The 'restrict' keyword is recognized in C99, while type qulifier '__restrict'
> compiles ok in C with all language levels. This patch is to add a wrapper
> defining '__rte_restrict' with 'restrict' and '__restrict' to be supported by all
> compilers.
> 
> Signed-off-by: Joyce Kong <joyce.kong at arm.com>
> ---
>  lib/librte_eal/include/rte_common.h | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/lib/librte_eal/include/rte_common.h
> b/lib/librte_eal/include/rte_common.h
> index 0843ce69e..cda32c056 100644
> --- a/lib/librte_eal/include/rte_common.h
> +++ b/lib/librte_eal/include/rte_common.h
> @@ -103,6 +103,16 @@ typedef uint16_t unaligned_uint16_t;
>   */
>  #define __rte_unused __attribute__((__unused__))
> 
> +/**
> + * Define a wrapper for restricted pointers which can be supported
> + * by all compilers.
> + */
> +#if __STDC_VERSION__ >= 199901
> +#define __rte_restrict restrict
> +#else
> +#define __rte_restrict __restrict
> +#endif
> +
>  /**
>   * definition to mark a variable or function parameter as used so
>   * as to avoid a compiler warning
> --
> 2.27.0
Reviewed-by: Ruifeng Wang <ruifeng.wang at arm.com>


More information about the dev mailing list