Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Jun 2026 17:29:52 +0330
From:      Faraz Vahedi <kfv@kfv.io>
To:        Konstantin Belousov <kib@freebsd.org>
Cc:        Warner Losh <imp@freebsd.org>, alc@freebsd.org, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject:   Re: git: 9d87c1aac4a8 - main - libc: Add missing kill_dependency macro
Message-ID:  <33E8BFC4-EA46-41A7-B54F-1AADD3C19D9E@kfv.io>
In-Reply-To: <9A21692F-0B53-4303-85A8-57784BFAF8DE@kfv.io>
References:  <6a35ddd4.24ba1.2ad9343d@gitrepo.freebsd.org> <ajZxmJoxyjjx0TSO@kib.kiev.ua> <9A21692F-0B53-4303-85A8-57784BFAF8DE@kfv.io>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Hey,

I took another look and dug a bit deeper to make sure whether we
should adopt GCC’s form here, and I still think we should stick with
the current one.

First, although I still need to investigate further, I doubt it adds any
optimisation benefits, nor would omitting it incur a penalty.

More importantly, what we currently have fully conforms to the
§7.17.3.1 and is therefore in its most portable form. There is also
ongoing work (e.g. N3607) to retire `memory_order_consume` and
obsolete `kill_dependency`, with the proposed wording being that
the macro “has no other effect than its result”, which is essentially
just `(y)`, right? So presumably Clang's own `<stdatomic.h>` uses
`(y)` for the same sort of reasons.

However, I’m happy to discuss it further, and please do correct me
if you have data suggesting otherwise. In the meantime, I’ll do a bit
more research and will keep you posted if I find anything else.

Cheers,
Faraz


[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEnunneCmADnpNx8ZMLdpU9MVz/74FAmo2nNgACgkQLdpU9MVz
/76VpRAA08gJfK7ivNX981HwH3NNngrPCWxGvZ9ZwoAXX7Lp7h7PfB3CwF7WlwD6
1zxbPbrpf2ffY8yBrKzLLZUuak7m8yg7CfJZz4On8xzPpslkNNEm+ZG5cqyx3y+r
VYTl0/EWwGdMLZ8OMctlxuVvQ1+WtcEQ/TEy7UR1/ul+rQED2pKZltG6sUJFv41U
hB2ZyMOabTSkHUOXYntXwL7DgRyvpaox8gbppqCxbjksMk91lGnfoMX6qdIWN1wm
seqzXbMFwHSR9QWuvfigi1yrzXY1oyfCg1txE/iJ1iezPYVNvFUzLxc8AcnY/utK
0jLPqqTGnh4u9Tn8bHQ1bJJTpyC/uUTED7fR4GIpuqsBG5H1st9CtZvnaAH+qmp5
wosbxmVYvveO0PEqrmhho9d4jdZ3sNdQPTsu9iCOdPd1JBk9Pi+BZnLwWOdwkyD8
0vP1cLYNsn2ZL87pujbc99HUwVZ004wdAJpOzjLcfxF26v9Fgj10mF61AN0QLHcw
DtrxI+0v4MUk7rqY7fZrt43GNtk3gbW+DgIwahtMIqU+d/lVAJKfTuyaVHrORvJ1
czmVY1MJlpYvrkzEbY/P5sjg4/w2DlkCcZVlo+EhkYTK4vBOk5oFs2IUVbXlcliU
7Z1Wa33KdDZQ7Zl6pqARykaMhwCnT6SKzghLi31IQU/Px1w3+wE=
=dPrj
-----END PGP SIGNATURE-----
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?33E8BFC4-EA46-41A7-B54F-1AADD3C19D9E>