Increase compatibility with GCC libatomic.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Event Timeline
Please clarify what this is adding in the patch description.
compiler-rt/lib/builtins/atomic.c | ||
---|---|---|
334 | Is there no lockfree version of this? If not, why? It should be there for relevant sizes. |
I'm adding builtins that exist in GCC libatomic. What should I document extra?
compiler-rt/lib/builtins/atomic.c | ||
---|---|---|
334 | Not for NAND, at least not for my CPU & compiler I tested. |
compiler-rt/lib/builtins/atomic.c | ||
---|---|---|
334 | I don't understand this comment. A CPU that has load-linked / store-conditional or atomic compare-and-exchange for values that are this size has a lock-free version. That will be used by the compiler with some flags, so this implementation will not be atomic with respect to versions that use them. That's a big problem. |
Is there no lockfree version of this? If not, why? It should be there for relevant sizes.