[PATCH] devtools: stop compiler atomics with no C11 equivalent
Tyler Retzlaff
roretzla at linux.microsoft.com
Wed Mar 22 22:00:15 CET 2023
On Wed, Mar 22, 2023 at 07:25:09PM +0100, Morten Brørup wrote:
> > From: Tyler Retzlaff [mailto:roretzla at linux.microsoft.com]
> > Sent: Wednesday, 22 March 2023 19.08
> >
> > adding a few more people to cc for attention
> >
> > On Mon, Mar 20, 2023 at 09:22:01AM -0700, Tyler Retzlaff wrote:
> > > Refrain from using compiler __atomic_{add,and,nand,or,sub,xor}_fetch()
> > > to ease future adoption of C11 standard atomics.
> > >
> > > Signed-off-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
> > > ---
> > > devtools/checkpatches.sh | 8 ++++++++
> > > 1 file changed, 8 insertions(+)
> > >
> > > diff --git a/devtools/checkpatches.sh b/devtools/checkpatches.sh
> > > index 1dee094..1ed6d51 100755
> > > --- a/devtools/checkpatches.sh
> > > +++ b/devtools/checkpatches.sh
> > > @@ -119,6 +119,14 @@ check_forbidden_additions() { # <patch>
> > > -f $(dirname $(readlink -f $0))/check-forbidden-tokens.awk
> > \
> > > "$1" || res=1
> > >
> > > + # refrain from using compiler
> > __atomic_{add,and,nand,or,sub,xor}_fetch()
> > > + awk -v FOLDERS="lib drivers app examples" \
> > > + -v
> > EXPRESSIONS="__atomic_(add|and|nand|or|sub|xor)_fetch\\\(" \
> > > + -v RET_ON_FAIL=1 \
> > > + -v MESSAGE='Using __atomic_{add,and,nand,or,sub,xor}_fetch'
> > \
>
> Suggest that you expand the error message with a solution for the developer: "... use __atomic_fetch_op() instead of __atomic_op_fetch()"
if awk could expand captures i would do that but it can't.
or do you mean literally use 'op' instead of {add,and,nand,or,sub,xor}
in the message?
>
> > > + -f $(dirname $(readlink -f $0))/check-forbidden-tokens.awk
> > \
> > > + "$1" || res=1
> > > +
> > > # forbid use of __reserved which is a reserved keyword in Windows
> > system headers
> > > awk -v FOLDERS="lib drivers app examples" \
> > > -v EXPRESSIONS='\\<__reserved\\>' \
> > > --
> > > 1.8.3.1
More information about the dev
mailing list