For ppc gcc, implement 64-bit compare_exchange and fetch_add with asm.
authorNoah Misch <noah@leadboat.com>
Mon, 12 Oct 2020 04:31:37 +0000 (21:31 -0700)
committerNoah Misch <noah@leadboat.com>
Mon, 12 Oct 2020 04:31:37 +0000 (21:31 -0700)
commitf5c1167b173d6e7a5d4c938fe716f0d29ae7228d
tree377ddd8d4a6af5912322d0fa7562af50889faf91
parent80f8eb79e24d9b7963eaf17ce846667e2c6b6e6f
For ppc gcc, implement 64-bit compare_exchange and fetch_add with asm.

While xlc defines __64BIT__, gcc does not.  Due to this oversight in
commit 30ee5d17c20dbb282a9952b3048d6ad52d56c371, gcc builds continued
implementing 64-bit atomics by way of intrinsics.  Back-patch to v13,
where that commit first appeared.

Reviewed by Tom Lane.

Discussion: http://postgr.es/m/20201011051043.GA1724101@rfd.leadboat.com
src/include/port/atomics/arch-ppc.h