CVSROOT: /cvs Module name: src Changes by: gkoeh...@cvs.openbsd.org 2020/06/04 16:33:17
Modified files: gnu/llvm/lib/Target/PowerPC: PPCISelLowering.cpp Log message: Set max atomic size for PowerPC. 32-bit PowerPC doesn't have instructions for lock-free atomic ops on 8-byte values, and needs libcalls like __atomic_fetch_add_8(). In code like "_Atomic long long a; a++;", clang doesn't emit a libcall. This was causing linker errors on symbols like __sync_fetch_and_add_8. Now that LLVM knows the max atomic size, its AtomicExpandPass changes these 8-byte ops into libcalls. ok mortimer@