From c53f73879f552a3c7cc57d2d6a49d38cd80cf267 Mon Sep 17 00:00:00 2001
From: Noah Misch <noah@leadboat.com>
Date: Wed, 29 Jul 2015 22:49:48 -0400
Subject: [PATCH] Blacklist xlc 32-bit inlining.

Per a suggestion from Tom Lane.  Back-patch to 9.0 (all supported
versions).  While only 9.4 and up have code known to elicit this
compiler bug, we were disabling inlining by accident until commit
43d89a23d59c487bc9258fad7a6187864cb8c0c0.
---
 config/test_quiet_include.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/config/test_quiet_include.h b/config/test_quiet_include.h
index f4fa4d30dd7..732b23149e9 100644
--- a/config/test_quiet_include.h
+++ b/config/test_quiet_include.h
@@ -7,3 +7,12 @@ fun()
 {
 	return 0;
 }
+
+/*
+ * "IBM XL C/C++ for AIX, V12.1" miscompiles, for 32-bit, some inline
+ * expansions of ginCompareItemPointers() "long long" arithmetic.  To take
+ * advantage of inlining, build a 64-bit PostgreSQL.
+ */
+#if defined(__ILP32__) && defined(__IBMC__)
+#error "known inlining bug"
+#endif
-- 
GitLab