Enables atomic.c in compiler_rt and forces clang to not emit a symbol calling to an external __atomic_is_lock_free.
At compiling time, if clang can't decide if atomic operation can be lock free, it emits a call to an external __atomic_is_lock_free, so decision can be made at runtime. According to LLVM code documentation, the mechanism exists due to differences between x86_64 processors that can't be decided at runtime.
On PowerPC/PowerPCSPE (32 bits), we already know in advance it can't be lock free, so we force the decision at compile time and avoid having to implement it in an external library.
This patch was made after 32 bit users testing the PowePC32 bit ISO reported llvm could not be compiled with in-base llvm due to __atomic_load8 not implemented.
- I'm not sure if the approach in LLVM is acceptable, please let me know your thoughts