> > That's true. Actually I see the values are defined by the compiler
> > at compile time, so it would be possible to move all one up?
> No, that is IMHO not possible. They need to match the enum values that are
> part of libstdc++ ABI already, and not everybody is going to use the
> __ATOMIC_* macros anyway.
I see. Maybe it's best to just forbid HLE_ACQUIRE + RELAXED
and HLE_RELEASE + RELAXED, because they are very very likely to be wrong.
Since this all implementation specific anyways could just forced them to
HLE_ACQUIRE+ACQUIRE and HLE_RELEASE+RELEASE.
Essentially Kirill's patch did that except it missed the check
to only do it when RELAXED is in the lower bits.
a...@linux.intel.com -- Speaking for myself only.