$OpenBSD: patch-lib_Target_PowerPC_PPCISelLowering_cpp,v 1.10 2020/08/26 10:33:47 jca Exp $

Set max atomic size for PowerPC, so AtomicExpandPass changes some
8-byte atomic ops into libcalls.

Index: lib/Target/PowerPC/PPCISelLowering.cpp
--- lib/Target/PowerPC/PPCISelLowering.cpp.orig
+++ lib/Target/PowerPC/PPCISelLowering.cpp
@@ -1142,7 +1142,10 @@ PPCTargetLowering::PPCTargetLowering(const PPCTargetMa
 
   setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, isPPC64 ? Legal : Custom);
 
-  if (!isPPC64) {
+  if (isPPC64)
+    setMaxAtomicSizeInBitsSupported(64);
+  else {
+    setMaxAtomicSizeInBitsSupported(32);
     setOperationAction(ISD::ATOMIC_LOAD,  MVT::i64, Expand);
     setOperationAction(ISD::ATOMIC_STORE, MVT::i64, Expand);
   }
