[lttng-dev] [PATCH 02/11] urcu/uatomic: Use atomic builtins if configured
Olivier Dion
odion at efficios.com
Thu Jun 22 15:53:33 EDT 2023
On Thu, 22 Jun 2023, "Paul E. McKenney" <paulmck at kernel.org> wrote:
> I suggest C11 volatile atomic load/store. Load/store fusing is permitted
> for non-volatile atomic loads and stores, and such fusing can ruin your
> code's entire day. ;-)
Good catch. Seems like not a problem on GCC (yet), but Clang is extremely
aggressive and seems to do store fusing on some corner cases [0].
However, I do not find any simple reproducer of load/store fusing. Do
you have example of such fusing, or is this a precaution? In the
meantime, back to reading the standard to be certain :-)
[0] https://godbolt.org/z/odKG9a75a
--
Olivier Dion
EfficiOS Inc.
https://www.efficios.com
More information about the lttng-dev
mailing list