[PATCH] Ada, Darwin, PowerPC : Fix bootstrap after 128 int changes.

Iain Sandoe iain@sandoe.co.uk
Sun Oct 25 10:21:28 GMT 2020


Hi.

Three bootstrap breaks in one week must be close to a record, even for
powerpc-darwin ;)

tested on powerpc-darwin9 (m32/m64),
OK for master?
Iain

P.S. There are some apparent regressions/new GNAT fails for the m64 multilib
but these will be addressed separately.

Excess errors:
validity_check.adb:13:04: run-time configuration error
validity_check.adb:13:04: entity "System.Scalar_Values.Is_Is16" not defined

———— commit message

The GNATRTL_128BIT_PAIRS/OBJS need to be added for 64bit
multilibs on powerpc-darwin, and for powerpc64-darwin.

gcc/ada/ChangeLog:

	* Makefile.rtl: Add GNATRTL_128BIT_PAIRS/OBJS for 64bit
	PowerPC Darwin cases.
---
 gcc/ada/Makefile.rtl | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index 254db518f3e..2b5d1de17fa 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2796,8 +2796,19 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
       $(ATOMICS_BUILTINS_TARGET_PAIRS) \
       system.ads<libgnat/system-darwin-ppc.ads
 
-    ifeq ($(strip $(MULTISUBDIR)),/ppc64)
+    ifeq ($(strip $(filter-out powerpc64,$(target_cpu))),)
+      ifneq ($(strip $(MULTISUBDIR)),/ppc)
+        LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+        EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+      else
+        SO_OPTS += -m32
+      endif
+    else
+      ifeq ($(strip $(MULTISUBDIR)),/ppc64)
         SO_OPTS += -m64
+        LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+        EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+      endif
     endif
   endif
 
-- 
2.24.1




More information about the Gcc-patches mailing list