--- /clang/lib/Basic/CMakeLists.txt
+++ /clang/lib/Basic/CMakeLists.txt
@@ -110,3 +110,16 @@
   omp_gen
   )
 
+# libclangBasic compiled by GCC at least on 32-bit PowerPC may contain reference
+# to __atomic_load_8.
+if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+  if (LLVM_LINKER_IS_GNULD OR LLVM_LINKER_IS_GOLD OR LLVM_LINKER_IS_LLD)
+    target_link_libraries(clangBasic
+      PRIVATE
+      "-Wl,--push-state"
+      "-Wl,--as-needed"
+      atomic
+      "-Wl,--pop-state"
+    )
+  endif()
+endif()