From: Joyce Kong <joyce.kong@arm.com>
To: maxime.coquelin@redhat.com, jerinj@marvell.com,
zhihong.wang@intel.com, xiaolong.ye@intel.com,
beilei.xing@intel.com, jia.guo@intel.com,
john.mcnamara@intel.com, matan@mellanox.com,
shahafs@mellanox.com, viacheslavo@mellanox.com,
honnappa.nagarahalli@arm.com, phil.yang@arm.com,
ruifeng.wang@arm.com
Cc: dev@dpdk.org, nd@arm.com
Subject: [dpdk-dev] [PATCH v2 1/6] lib/eal: add a common wrapper for restricted pointers
Date: Mon, 6 Jul 2020 15:49:25 +0800 [thread overview]
Message-ID: <20200706074930.54299-2-joyce.kong@arm.com> (raw)
In-Reply-To: <20200706074930.54299-1-joyce.kong@arm.com>
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@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
next prev parent reply other threads:[~2020-07-06 7:49 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-11 3:32 [dpdk-dev] [PATCH v1 0/2] virtio: restrict pointer aliasing for loops vectorization Joyce Kong
2020-06-11 3:32 ` [dpdk-dev] [PATCH v1 1/2] net/virtio: restrict pointer aliasing for NEON vpmd Joyce Kong
2020-06-23 8:47 ` Maxime Coquelin
2020-06-23 9:05 ` Phil Yang
2020-06-24 2:58 ` Joyce Kong
2020-06-24 4:16 ` Stephen Hemminger
2020-06-11 3:32 ` [dpdk-dev] [PATCH v1 2/2] lib/vhost: restrict pointer aliasing for packed path Joyce Kong
2020-07-07 16:25 ` Adrian Moreno
2020-07-10 3:15 ` Joyce Kong
2020-07-06 7:49 ` [dpdk-dev] [PATCH v2 0/6] Restrict pointer aliasing with a common wrapper Joyce Kong
2020-07-06 7:49 ` Joyce Kong [this message]
2020-07-07 2:15 ` [dpdk-dev] [PATCH v2 1/6] lib/eal: add a common wrapper for restricted pointers Jerin Jacob
2020-07-07 2:24 ` Phil Yang
2020-07-07 2:40 ` Ruifeng Wang
2020-07-07 13:57 ` David Marchand
2020-07-08 2:46 ` Joyce Kong
2020-07-06 7:49 ` [dpdk-dev] [PATCH v2 2/6] net/virtio: restrict pointer aliasing for NEON vpmd Joyce Kong
2020-07-06 7:49 ` [dpdk-dev] [PATCH v2 3/6] lib/vhost: restrict pointer aliasing for packed vpmd Joyce Kong
2020-07-07 13:58 ` David Marchand
2020-07-06 7:49 ` [dpdk-dev] [PATCH v2 4/6] net/i40e: replace restrict with rte restrict Joyce Kong
2020-07-07 2:25 ` Phil Yang
2020-07-07 2:43 ` Ruifeng Wang
2020-07-07 14:00 ` David Marchand
2020-07-08 3:21 ` Joyce Kong
2020-07-09 9:57 ` David Marchand
2020-07-10 2:45 ` Joyce Kong
2020-07-06 7:49 ` [dpdk-dev] [PATCH v2 5/6] examples/performance-thread: replace restrict with wrapper Joyce Kong
2020-07-07 2:27 ` Phil Yang
2020-07-07 2:45 ` Ruifeng Wang
2020-07-06 7:49 ` [dpdk-dev] [PATCH v2 6/6] net/mlx5: replace restrict keyword with rte restrict Joyce Kong
2020-07-07 2:28 ` Phil Yang
2020-07-07 2:47 ` Ruifeng Wang
2020-07-09 13:52 ` [dpdk-dev] [PATCH v2 0/6] Restrict pointer aliasing with a commonwrapper Morten Brørup
2020-07-10 3:17 ` Joyce Kong
2020-07-10 2:38 ` [dpdk-dev] [PATCH v3 0/3] restrict pointer aliasing with a common wrapper Joyce Kong
2020-07-10 2:38 ` [dpdk-dev] [PATCH v3 1/3] lib/eal: add a common wrapper for restricted pointers Joyce Kong
2020-07-10 2:38 ` [dpdk-dev] [PATCH v3 2/3] net/virtio: restrict pointer aliasing for NEON vpmd Joyce Kong
2020-07-10 2:38 ` [dpdk-dev] [PATCH v3 3/3] lib/vhost: restrict pointer aliasing for packed vpmd Joyce Kong
2020-07-10 13:41 ` Adrian Moreno
2020-07-10 14:05 ` [dpdk-dev] [PATCH v3 0/3] restrict pointer aliasing with a common wrapper David Marchand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200706074930.54299-2-joyce.kong@arm.com \
--to=joyce.kong@arm.com \
--cc=beilei.xing@intel.com \
--cc=dev@dpdk.org \
--cc=honnappa.nagarahalli@arm.com \
--cc=jerinj@marvell.com \
--cc=jia.guo@intel.com \
--cc=john.mcnamara@intel.com \
--cc=matan@mellanox.com \
--cc=maxime.coquelin@redhat.com \
--cc=nd@arm.com \
--cc=phil.yang@arm.com \
--cc=ruifeng.wang@arm.com \
--cc=shahafs@mellanox.com \
--cc=viacheslavo@mellanox.com \
--cc=xiaolong.ye@intel.com \
--cc=zhihong.wang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).