[PATCH] D13051: Add placeholder __libcpp_relaxed_store() for when atomic builtins are not available.
Joerg Sonnenberger via cfe-commits
cfe-commits at lists.llvm.org
Tue Sep 22 11:23:21 PDT 2015
On Tue, Sep 22, 2015 at 05:44:59PM +0000, Eric Fiselier via cfe-commits wrote:
> EricWF added a comment.
>
> Does anything actually need this? This interface was never really meant to be complete, just want was needed.
>
> > It's a shame that libc++ decided to reinvent the wheel here and not use the C11 atomics support
>
>
> GCC doesn't provide "_Atomic" and `<atomic>` isn't always fully available. This is a minimal subset of atomic functionality needed to support `std::shared_ptr` and `std::call_once` among other things. All new code should use std::atomic IMO. It's not meant to reinvent the wheel, It's meant to be a portable option for when there is no "wheel" already.
>
> Does armv4 need lib calls for atomic operations on "unsigned long"?
Yes, the hardware doesn't support anything.
Joerg
More information about the cfe-commits
mailing list