[libc++] Extract a clean base support API for std::atomic (#118129)

This patch documents the underlying API for implementing atomics on a
platform.

This doesn't change the operations that std::atomic is based on, but it
reorganizes the C11 / GCC implementation split to make it clearer what's
the base support layer and what's not.

GitOrigin-RevId: 0e34f3f4968d8d32a64e26777541f939deb2274c
13 files changed