public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [Ada] Build support units for 128-bit integer types on 64-bit platforms
@ 2020-10-22 12:12 Pierre-Marie de Rodat
  2020-10-23  8:11 ` Andreas Schwab
  2020-11-18 11:36 ` Matthias Klose
  0 siblings, 2 replies; 10+ messages in thread
From: Pierre-Marie de Rodat @ 2020-10-22 12:12 UTC (permalink / raw)
  To: gcc-patches; +Cc: Eric Botcazou

[-- Attachment #1: Type: text/plain, Size: 340 bytes --]

This enables the build of the support units for 128-bit integer types
in the full runtime of 64-bit platforms.

Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

	* Makefile.rtl (64-bit platforms): Add GNATRTL_128BIT_PAIRS to
	the LIBGNAT_TARGET_PAIRS list and also GNATRTL_128BIT_OBJS to
	the EXTRA_GNATRTL_NONTASKING_OBJS list.

[-- Attachment #2: patch.diff --]
[-- Type: text/x-diff, Size: 18809 bytes --]

diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -1060,6 +1060,11 @@ ifeq ($(strip $(filter-out powerpc% wrs vxworks vxworksspe vxworks7% vxworks7spe
     EXTRA_GNATRTL_NONTASKING_OBJS+=s-stchop.o
   endif
 
+  ifeq ($(strip $(filter-out powerpc64, $(target_cpu))),)
+    LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+  endif
+
   TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
 
   ifeq ($(strip $(filter-out rtp,$(THREAD_KIND))),)
@@ -1263,20 +1268,7 @@ endif
 # x86/x86_64 VxWorks
 ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(target_vendor) $(target_os))),)
 
-  EH_MECHANISM=-gcc
-
-  VX=$(strip $(if $(filter vxworks7%, $(target_os)), vxworks7, vxworks))
-  SVX=system-$(VX)
-
-  ifeq ($(strip $(filter-out x86_64, $(target_cpu))),)
-     X86CPU=x86_64
-     LIBGNAT_TARGET_PAIRS=$(X86_64_TARGET_PAIRS)
-  else
-     X86CPU=x86
-     LIBGNAT_TARGET_PAIRS=$(X86_TARGET_PAIRS)
-  endif
-
-  LIBGNAT_TARGET_PAIRS+= \
+  LIBGNAT_TARGET_PAIRS= \
   a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
   i-vxwork.ads<libgnat/i-vxwork__x86.ads \
   s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
@@ -1298,8 +1290,23 @@ ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(targ
   g-stsifd.adb<libgnat/g-stsifd__sockets.adb \
   $(ATOMICS_TARGET_PAIRS)
 
+  VX=$(strip $(if $(filter vxworks7%, $(target_os)), vxworks7, vxworks))
+  SVX=system-$(VX)
+
+  ifeq ($(strip $(filter-out x86_64, $(target_cpu))),)
+     X86CPU=x86_64
+     LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+     LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+     EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+  else
+     X86CPU=x86
+     LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
+  endif
+
   TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
 
+  EH_MECHANISM=-gcc
+
   # The CPU setting for VxSim varies with the
   # host (Windows or Linux)
   # target (VxWorks6 or VxWorks7)
@@ -1379,7 +1386,7 @@ ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(targ
         endif
       endif
 
-      EXTRA_GNATRTL_NONTASKING_OBJS=i-vxwork.o i-vxwoio.o
+      EXTRA_GNATRTL_NONTASKING_OBJS += i-vxwork.o i-vxwoio.o
     endif
   endif
 
@@ -1403,12 +1410,37 @@ endif
 # ARM and Aarch64 VxWorks
 ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vendor) $(target_os))),)
 
+  LIBGNAT_TARGET_PAIRS = \
+  a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
+  a-naliop.ads<libgnat/a-naliop__nolibm.ads \
+  a-nuaufl.ads<libgnat/a-nuaufl__wraplf.ads \
+  a-nashfl.ads<libgnat/a-nashfl__wraplf.ads \
+  s-inmaop.adb<libgnarl/s-inmaop__vxworks.adb \
+  s-interr.adb<libgnarl/s-interr__vxworks.adb \
+  s-intman.ads<libgnarl/s-intman__vxworks.ads \
+  s-intman.adb<libgnarl/s-intman__vxworks.adb \
+  s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
+  s-osinte.ads<libgnarl/s-osinte__vxworks.ads \
+  s-osprim.adb<libgnat/s-osprim__vxworks.adb \
+  s-parame.ads<libgnat/s-parame__vxworks.ads \
+  s-parame.adb<libgnat/s-parame__vxworks.adb \
+  s-stchop.ads<libgnat/s-stchop__limit.ads \
+  s-stchop.adb<libgnat/s-stchop__vxworks.adb \
+  s-taprop.adb<libgnarl/s-taprop__vxworks.adb \
+  s-tasinf.ads<libgnarl/s-tasinf__vxworks.ads \
+  s-taspri.ads<libgnarl/s-taspri__vxworks.ads \
+  g-socthi.ads<libgnat/g-socthi__vxworks.ads \
+  g-socthi.adb<libgnat/g-socthi__vxworks.adb \
+  g-stsifd.adb<libgnat/g-stsifd__sockets.adb
+
   ifeq ($(strip $(filter-out aarch64, $(target_cpu))),)
     ARCH_STR=aarch64
     VX=vxworks7
     EH_MECHANISM=-gcc
     SIGTRAMP_OBJ=sigtramp-vxworks.o
-    LIBGNAT_TARGET_PAIRS += a-nallfl.ads<libgnat/a-nallfl__wraplf.ads
+    LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS) \
+      a-nallfl.ads<libgnat/a-nallfl__wraplf.ads
+    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
   else
     ifeq ($(strip $(filter-out arm%, $(target_cpu))),)
       ARCH_STR=arm
@@ -1426,31 +1458,9 @@ ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vend
     endif
   endif
 
-  SVX=system-$(VX)
+  LIBGNAT_TARGET_PAIRS += s-vxwork.ads<libgnarl/s-vxwork__$(ARCH_STR).ads
 
-  LIBGNAT_TARGET_PAIRS = \
-  a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
-  a-naliop.ads<libgnat/a-naliop__nolibm.ads \
-  a-nuaufl.ads<libgnat/a-nuaufl__wraplf.ads \
-  a-nashfl.ads<libgnat/a-nashfl__wraplf.ads \
-  s-inmaop.adb<libgnarl/s-inmaop__vxworks.adb \
-  s-interr.adb<libgnarl/s-interr__vxworks.adb \
-  s-intman.ads<libgnarl/s-intman__vxworks.ads \
-  s-intman.adb<libgnarl/s-intman__vxworks.adb \
-  s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
-  s-osinte.ads<libgnarl/s-osinte__vxworks.ads \
-  s-osprim.adb<libgnat/s-osprim__vxworks.adb \
-  s-parame.ads<libgnat/s-parame__vxworks.ads \
-  s-parame.adb<libgnat/s-parame__vxworks.adb \
-  s-stchop.ads<libgnat/s-stchop__limit.ads \
-  s-stchop.adb<libgnat/s-stchop__vxworks.adb \
-  s-taprop.adb<libgnarl/s-taprop__vxworks.adb \
-  s-tasinf.ads<libgnarl/s-tasinf__vxworks.ads \
-  s-taspri.ads<libgnarl/s-taspri__vxworks.ads \
-  s-vxwork.ads<libgnarl/s-vxwork__$(ARCH_STR).ads \
-  g-socthi.ads<libgnat/g-socthi__vxworks.ads \
-  g-socthi.adb<libgnat/g-socthi__vxworks.adb \
-  g-stsifd.adb<libgnat/g-stsifd__sockets.adb
+  SVX=system-$(VX)
 
   TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
 
@@ -1495,9 +1505,8 @@ ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vend
     endif
   endif
 
-  EXTRA_GNATRTL_NONTASKING_OBJS=i-vxwork.o i-vxwoio.o \
-    s-stchop.o
-  EXTRA_GNATRTL_TASKING_OBJS=i-vxinco.o s-vxwork.o s-vxwext.o
+  EXTRA_GNATRTL_NONTASKING_OBJS += i-vxwork.o i-vxwoio.o s-stchop.o
+  EXTRA_GNATRTL_TASKING_OBJS += i-vxinco.o s-vxwork.o s-vxwext.o
 
   EXTRA_LIBGNAT_OBJS+=vx_stack_info.o
 
@@ -1560,10 +1569,12 @@ ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),)
   g-soliop.ads<libgnat/g-soliop__qnx.ads \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-qnx-aarch64.ads
 
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
+  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
   EXTRA_GNATRTL_TASKING_OBJS=s-qnx.o
   EXTRA_LIBGNAT_OBJS+=sigtramp-qnx.o
   EXTRA_LIBGNAT_SRCS+=sigtramp.h
@@ -1576,7 +1587,7 @@ ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),)
   LIBRARY_VERSION := $(LIB_VERSION)
 endif
 
-# Sparc Solaris
+# SPARC Solaris
 ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(target_os))),)
   LIBGNAT_TARGET_PAIRS = \
   a-intnam.ads<libgnarl/a-intnam__solaris.ads \
@@ -1600,6 +1611,18 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(
 
   EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
 
+  ifeq ($(strip $(filter-out sparc64 sparcv9,$(target_cpu))),)
+    ifneq ($(strip $(MULTISUBDIR)),/sparcv8plus)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  else
+    ifeq ($(strip $(MULTISUBDIR)),/sparcv9)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  endif
+
   EH_MECHANISM=-gcc
   THREADSLIB = -lposix4 -lthread
   MISCLIB = -lposix4 -lnsl -lsocket
@@ -1609,7 +1632,7 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(
   LIBRARY_VERSION := $(LIB_VERSION)
 endif
 
-# x86 and x86-64 solaris
+# x86 and x86-64 Solaris
 ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
   LIBGNAT_TARGET_PAIRS_COMMON = \
   a-intnam.ads<libgnarl/a-intnam__solaris.ads \
@@ -1633,6 +1656,8 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
     ifeq ($(strip $(MULTISUBDIR)),/amd64)
       LIBGNAT_TARGET_PAIRS = \
       $(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_64_TARGET_PAIRS)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
     else
       LIBGNAT_TARGET_PAIRS = \
       $(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_TARGET_PAIRS)
@@ -1644,6 +1669,8 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
     else
       LIBGNAT_TARGET_PAIRS = \
       $(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_64_TARGET_PAIRS)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
     endif
   endif
 
@@ -1679,6 +1706,8 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),)
 
   ifeq ($(strip $(MULTISUBDIR)),/64)
     LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+    LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
   else
     LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
   endif
@@ -1776,8 +1805,13 @@ ifeq ($(strip $(filter-out x86_64 kfreebsd%,$(target_cpu) $(target_os))),)
   s-taprop.adb<libgnarl/s-taprop__posix.adb \
   s-taspri.ads<libgnarl/s-taspri__posix.ads \
   s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
+  $(ATOMICS_TARGET_PAIRS) \
+  $(X86_64_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-freebsd.ads
 
+  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
+
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EH_MECHANISM=-gcc
@@ -1803,8 +1837,11 @@ ifeq ($(strip $(filter-out %aarch64 freebsd%,$(target_cpu) $(target_os))),)
   s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-freebsd.ads
 
+  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
+
   GNATLIB_SHARED = gnatlib-shared-dual
 
   EH_MECHANISM=-gcc
@@ -1860,12 +1897,14 @@ ifeq ($(strip $(filter-out %86_64 freebsd%,$(target_cpu) $(target_os))),)
   $(TRASYM_DWARF_UNIX_PAIRS) \
   $(ATOMICS_TARGET_PAIRS) \
   $(X86_64_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-freebsd.ads
 
   GNATLIB_SHARED = gnatlib-shared-dual
 
   EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
   EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
 
   EH_MECHANISM=-gcc
   THREADSLIB= -lpthread
@@ -1889,11 +1928,13 @@ ifeq ($(strip $(filter-out %86_64 dragonfly%,$(target_cpu) $(target_os))),)
   s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
   $(ATOMICS_TARGET_PAIRS) \
   $(X86_64_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-dragonfly-x86_64.ads
 
   GNATLIB_SHARED = gnatlib-shared-dual
 
-  EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
+  EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
+  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
 
   EH_MECHANISM=-gcc
   THREADSLIB= -lpthread
@@ -1919,6 +1960,18 @@ ifeq ($(strip $(filter-out s390% linux%,$(target_cpu) $(target_os))),)
   s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
   system.ads<libgnat/system-linux-s390.ads
 
+  ifeq ($(strip $(filter-out s390x,$(target_cpu))),)
+    ifneq ($(strip $(MULTISUBDIR)),/32)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  else
+    ifeq ($(strip $(MULTISUBDIR)),/64)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  endif
+
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
@@ -2208,7 +2261,7 @@ endif
 
 # PowerPC and e500v2 Linux
 ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
-  LIBGNAT_TARGET_PAIRS_COMMON = \
+  LIBGNAT_TARGET_PAIRS = \
   a-exetim.adb<libgnarl/a-exetim__posix.adb \
   a-exetim.ads<libgnarl/a-exetim__default.ads \
   a-intnam.ads<libgnarl/a-intnam__linux.ads \
@@ -2220,21 +2273,30 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
   s-linux.ads<libgnarl/s-linux.ads \
   s-osinte.adb<libgnarl/s-osinte__posix.adb \
   s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
+  s-mudido.adb<libgnarl/s-mudido__affinity.adb \
+  s-osinte.ads<libgnarl/s-osinte__linux.ads \
+  s-osprim.adb<libgnat/s-osprim__posix.adb \
+  s-taprop.adb<libgnarl/s-taprop__linux.adb \
+  s-tasinf.ads<libgnarl/s-tasinf__linux.ads \
+  s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
+  s-taspri.ads<libgnarl/s-taspri__posix.ads \
   $(TRASYM_DWARF_UNIX_PAIRS) \
   s-tsmona.adb<libgnat/s-tsmona__linux.adb \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
   system.ads<libgnat/system-linux-ppc.ads
 
-  LIBGNAT_TARGET_PAIRS = \
-    $(LIBGNAT_TARGET_PAIRS_COMMON) \
-    s-mudido.adb<libgnarl/s-mudido__affinity.adb \
-    s-osinte.ads<libgnarl/s-osinte__linux.ads \
-    s-osprim.adb<libgnat/s-osprim__posix.adb \
-    s-taprop.adb<libgnarl/s-taprop__linux.adb \
-    s-tasinf.ads<libgnarl/s-tasinf__linux.ads \
-    s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
-    s-taspri.ads<libgnarl/s-taspri__posix.ads
+  ifeq ($(strip $(filter-out powerpc64,$(target_cpu))),)
+    ifneq ($(strip $(MULTISUBDIR)),/32)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  else
+    ifeq ($(strip $(MULTISUBDIR)),/64)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  endif
 
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
@@ -2301,10 +2363,12 @@ ifeq ($(strip $(filter-out aarch64% linux%,$(target_cpu) $(target_os))),)
   s-taspri.ads<libgnarl/s-taspri__posix.ads \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-linux-arm.ads
 
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
+  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
   EH_MECHANISM=-gcc
   THREADSLIB=-lpthread -lrt
@@ -2313,7 +2377,7 @@ ifeq ($(strip $(filter-out aarch64% linux%,$(target_cpu) $(target_os))),)
   LIBRARY_VERSION := $(LIB_VERSION)
 endif
 
-# Sparc Linux
+# SPARC Linux
 ifeq ($(strip $(filter-out sparc% linux%,$(target_cpu) $(target_os))),)
   LIBGNAT_TARGET_PAIRS = \
   a-intnam.ads<libgnarl/a-intnam__linux.ads \
@@ -2330,6 +2394,18 @@ ifeq ($(strip $(filter-out sparc% linux%,$(target_cpu) $(target_os))),)
   s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
   system.ads<libgnat/system-linux-sparc.ads
 
+  ifeq ($(strip $(filter-out sparc64 sparcv9,$(target_cpu))),)
+    ifneq ($(strip $(MULTISUBDIR)),/32)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  else
+    ifeq ($(strip $(MULTISUBDIR)),/64)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  endif
+
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
@@ -2447,11 +2523,13 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
   s-tsmona.adb<libgnat/s-tsmona__linux.adb \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-linux-ia64.ads
 
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
   EH_MECHANISM=-gcc
   THREADSLIB=-lpthread -lrt
@@ -2476,9 +2554,11 @@ ifeq ($(strip $(filter-out ia64% hp hpux%,$(target_cpu) $(target_vendor) $(targe
   $(TRASYM_DWARF_UNIX_PAIRS) \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-hpux-ia64.ads
 
   EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
 
   MISCLIB=
   EH_MECHANISM=-gcc
@@ -2507,10 +2587,12 @@ ifeq ($(strip $(filter-out alpha% linux%,$(target_cpu) $(target_os))),)
   s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
   $(ATOMICS_TARGET_PAIRS) \
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
   system.ads<libgnat/system-linux-alpha.ads
 
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
+  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
   EH_MECHANISM=-gcc
   MISCLIB=
@@ -2614,6 +2696,18 @@ ifeq ($(strip $(filter-out riscv% linux%,$(target_cpu) $(target_os))),)
   s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
   system.ads<libgnat/system-linux-riscv.ads
 
+  ifeq ($(strip $(filter-out riscv64,$(target_cpu))),)
+    ifneq ($(strip $(MULTISUBDIR)),/lib32)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  else
+    ifeq ($(strip $(MULTISUBDIR)),/lib64)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+    endif
+  endif
+
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
@@ -2647,11 +2741,13 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
     ifeq ($(strip $(MULTISUBDIR)),/x86_64)
       SO_OPTS += -m64
       LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
     else
       LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
     endif
 
-    EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
+    EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
   endif
 
   ifeq ($(strip $(filter-out %x86_64,$(target_cpu))),)
@@ -2668,9 +2764,11 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
       LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
     else
       LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
     endif
 
-    EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
+    EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
     EXTRA_GNATRTL_TASKING_OBJS=a-exetim.o
   endif
 
@@ -2704,8 +2802,10 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
       s-intman.adb<libgnarl/s-intman__susv3.adb \
       s-osprim.adb<libgnat/s-osprim__darwin.adb \
       $(ATOMICS_TARGET_PAIRS) \
-      $(ATOMICS_BUILTINS_TARGET_PAIRS)
+      $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+      $(GNATRTL_128BIT_PAIRS)
 
+    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
     EXTRA_LIBGNAT_OBJS+=sigtramp-ios.o
     EXTRA_LIBGNAT_SRCS+=sigtramp.h
     LIBGNAT_TARGET_PAIRS += \



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-10-22 12:12 [Ada] Build support units for 128-bit integer types on 64-bit platforms Pierre-Marie de Rodat
@ 2020-10-23  8:11 ` Andreas Schwab
  2020-10-23 16:18   ` Eric Botcazou
  2020-11-18 11:36 ` Matthias Klose
  1 sibling, 1 reply; 10+ messages in thread
From: Andreas Schwab @ 2020-10-23  8:11 UTC (permalink / raw)
  To: Pierre-Marie de Rodat; +Cc: gcc-patches, Eric Botcazou

On Okt 22 2020, Pierre-Marie de Rodat wrote:

> This enables the build of the support units for 128-bit integer types
> in the full runtime of 64-bit platforms.
>
> Tested on x86_64-pc-linux-gnu, committed on trunk
>
> gcc/ada/
>
> 	* Makefile.rtl (64-bit platforms): Add GNATRTL_128BIT_PAIRS to
> 	the LIBGNAT_TARGET_PAIRS list and also GNATRTL_128BIT_OBJS to
> 	the EXTRA_GNATRTL_NONTASKING_OBJS list.
>
> diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
> --- a/gcc/ada/Makefile.rtl
> +++ b/gcc/ada/Makefile.rtl
> @@ -1060,6 +1060,11 @@ ifeq ($(strip $(filter-out powerpc% wrs vxworks vxworksspe vxworks7% vxworks7spe
>      EXTRA_GNATRTL_NONTASKING_OBJS+=s-stchop.o
>    endif
>  
> +  ifeq ($(strip $(filter-out powerpc64, $(target_cpu))),)
> +    LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +  endif
> +
>    TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
>  
>    ifeq ($(strip $(filter-out rtp,$(THREAD_KIND))),)
> @@ -1263,20 +1268,7 @@ endif
>  # x86/x86_64 VxWorks
>  ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(target_vendor) $(target_os))),)
>  
> -  EH_MECHANISM=-gcc
> -
> -  VX=$(strip $(if $(filter vxworks7%, $(target_os)), vxworks7, vxworks))
> -  SVX=system-$(VX)
> -
> -  ifeq ($(strip $(filter-out x86_64, $(target_cpu))),)
> -     X86CPU=x86_64
> -     LIBGNAT_TARGET_PAIRS=$(X86_64_TARGET_PAIRS)
> -  else
> -     X86CPU=x86
> -     LIBGNAT_TARGET_PAIRS=$(X86_TARGET_PAIRS)
> -  endif
> -
> -  LIBGNAT_TARGET_PAIRS+= \
> +  LIBGNAT_TARGET_PAIRS= \
>    a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
>    i-vxwork.ads<libgnat/i-vxwork__x86.ads \
>    s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
> @@ -1298,8 +1290,23 @@ ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(targ
>    g-stsifd.adb<libgnat/g-stsifd__sockets.adb \
>    $(ATOMICS_TARGET_PAIRS)
>  
> +  VX=$(strip $(if $(filter vxworks7%, $(target_os)), vxworks7, vxworks))
> +  SVX=system-$(VX)
> +
> +  ifeq ($(strip $(filter-out x86_64, $(target_cpu))),)
> +     X86CPU=x86_64
> +     LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
> +     LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +     EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +  else
> +     X86CPU=x86
> +     LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
> +  endif
> +
>    TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
>  
> +  EH_MECHANISM=-gcc
> +
>    # The CPU setting for VxSim varies with the
>    # host (Windows or Linux)
>    # target (VxWorks6 or VxWorks7)
> @@ -1379,7 +1386,7 @@ ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(targ
>          endif
>        endif
>  
> -      EXTRA_GNATRTL_NONTASKING_OBJS=i-vxwork.o i-vxwoio.o
> +      EXTRA_GNATRTL_NONTASKING_OBJS += i-vxwork.o i-vxwoio.o
>      endif
>    endif
>  
> @@ -1403,12 +1410,37 @@ endif
>  # ARM and Aarch64 VxWorks
>  ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vendor) $(target_os))),)
>  
> +  LIBGNAT_TARGET_PAIRS = \
> +  a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
> +  a-naliop.ads<libgnat/a-naliop__nolibm.ads \
> +  a-nuaufl.ads<libgnat/a-nuaufl__wraplf.ads \
> +  a-nashfl.ads<libgnat/a-nashfl__wraplf.ads \
> +  s-inmaop.adb<libgnarl/s-inmaop__vxworks.adb \
> +  s-interr.adb<libgnarl/s-interr__vxworks.adb \
> +  s-intman.ads<libgnarl/s-intman__vxworks.ads \
> +  s-intman.adb<libgnarl/s-intman__vxworks.adb \
> +  s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
> +  s-osinte.ads<libgnarl/s-osinte__vxworks.ads \
> +  s-osprim.adb<libgnat/s-osprim__vxworks.adb \
> +  s-parame.ads<libgnat/s-parame__vxworks.ads \
> +  s-parame.adb<libgnat/s-parame__vxworks.adb \
> +  s-stchop.ads<libgnat/s-stchop__limit.ads \
> +  s-stchop.adb<libgnat/s-stchop__vxworks.adb \
> +  s-taprop.adb<libgnarl/s-taprop__vxworks.adb \
> +  s-tasinf.ads<libgnarl/s-tasinf__vxworks.ads \
> +  s-taspri.ads<libgnarl/s-taspri__vxworks.ads \
> +  g-socthi.ads<libgnat/g-socthi__vxworks.ads \
> +  g-socthi.adb<libgnat/g-socthi__vxworks.adb \
> +  g-stsifd.adb<libgnat/g-stsifd__sockets.adb
> +
>    ifeq ($(strip $(filter-out aarch64, $(target_cpu))),)
>      ARCH_STR=aarch64
>      VX=vxworks7
>      EH_MECHANISM=-gcc
>      SIGTRAMP_OBJ=sigtramp-vxworks.o
> -    LIBGNAT_TARGET_PAIRS += a-nallfl.ads<libgnat/a-nallfl__wraplf.ads
> +    LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS) \
> +      a-nallfl.ads<libgnat/a-nallfl__wraplf.ads
> +    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
>    else
>      ifeq ($(strip $(filter-out arm%, $(target_cpu))),)
>        ARCH_STR=arm
> @@ -1426,31 +1458,9 @@ ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vend
>      endif
>    endif
>  
> -  SVX=system-$(VX)
> +  LIBGNAT_TARGET_PAIRS += s-vxwork.ads<libgnarl/s-vxwork__$(ARCH_STR).ads
>  
> -  LIBGNAT_TARGET_PAIRS = \
> -  a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
> -  a-naliop.ads<libgnat/a-naliop__nolibm.ads \
> -  a-nuaufl.ads<libgnat/a-nuaufl__wraplf.ads \
> -  a-nashfl.ads<libgnat/a-nashfl__wraplf.ads \
> -  s-inmaop.adb<libgnarl/s-inmaop__vxworks.adb \
> -  s-interr.adb<libgnarl/s-interr__vxworks.adb \
> -  s-intman.ads<libgnarl/s-intman__vxworks.ads \
> -  s-intman.adb<libgnarl/s-intman__vxworks.adb \
> -  s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
> -  s-osinte.ads<libgnarl/s-osinte__vxworks.ads \
> -  s-osprim.adb<libgnat/s-osprim__vxworks.adb \
> -  s-parame.ads<libgnat/s-parame__vxworks.ads \
> -  s-parame.adb<libgnat/s-parame__vxworks.adb \
> -  s-stchop.ads<libgnat/s-stchop__limit.ads \
> -  s-stchop.adb<libgnat/s-stchop__vxworks.adb \
> -  s-taprop.adb<libgnarl/s-taprop__vxworks.adb \
> -  s-tasinf.ads<libgnarl/s-tasinf__vxworks.ads \
> -  s-taspri.ads<libgnarl/s-taspri__vxworks.ads \
> -  s-vxwork.ads<libgnarl/s-vxwork__$(ARCH_STR).ads \
> -  g-socthi.ads<libgnat/g-socthi__vxworks.ads \
> -  g-socthi.adb<libgnat/g-socthi__vxworks.adb \
> -  g-stsifd.adb<libgnat/g-stsifd__sockets.adb
> +  SVX=system-$(VX)
>  
>    TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
>  
> @@ -1495,9 +1505,8 @@ ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vend
>      endif
>    endif
>  
> -  EXTRA_GNATRTL_NONTASKING_OBJS=i-vxwork.o i-vxwoio.o \
> -    s-stchop.o
> -  EXTRA_GNATRTL_TASKING_OBJS=i-vxinco.o s-vxwork.o s-vxwext.o
> +  EXTRA_GNATRTL_NONTASKING_OBJS += i-vxwork.o i-vxwoio.o s-stchop.o
> +  EXTRA_GNATRTL_TASKING_OBJS += i-vxinco.o s-vxwork.o s-vxwext.o
>  
>    EXTRA_LIBGNAT_OBJS+=vx_stack_info.o
>  
> @@ -1560,10 +1569,12 @@ ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),)
>    g-soliop.ads<libgnat/g-soliop__qnx.ads \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-qnx-aarch64.ads
>  
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
> +  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
>    EXTRA_GNATRTL_TASKING_OBJS=s-qnx.o
>    EXTRA_LIBGNAT_OBJS+=sigtramp-qnx.o
>    EXTRA_LIBGNAT_SRCS+=sigtramp.h
> @@ -1576,7 +1587,7 @@ ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),)
>    LIBRARY_VERSION := $(LIB_VERSION)
>  endif
>  
> -# Sparc Solaris
> +# SPARC Solaris
>  ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(target_os))),)
>    LIBGNAT_TARGET_PAIRS = \
>    a-intnam.ads<libgnarl/a-intnam__solaris.ads \
> @@ -1600,6 +1611,18 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(
>  
>    EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
>  
> +  ifeq ($(strip $(filter-out sparc64 sparcv9,$(target_cpu))),)
> +    ifneq ($(strip $(MULTISUBDIR)),/sparcv8plus)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  else
> +    ifeq ($(strip $(MULTISUBDIR)),/sparcv9)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  endif
> +
>    EH_MECHANISM=-gcc
>    THREADSLIB = -lposix4 -lthread
>    MISCLIB = -lposix4 -lnsl -lsocket
> @@ -1609,7 +1632,7 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(
>    LIBRARY_VERSION := $(LIB_VERSION)
>  endif
>  
> -# x86 and x86-64 solaris
> +# x86 and x86-64 Solaris
>  ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
>    LIBGNAT_TARGET_PAIRS_COMMON = \
>    a-intnam.ads<libgnarl/a-intnam__solaris.ads \
> @@ -1633,6 +1656,8 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
>      ifeq ($(strip $(MULTISUBDIR)),/amd64)
>        LIBGNAT_TARGET_PAIRS = \
>        $(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_64_TARGET_PAIRS)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
>      else
>        LIBGNAT_TARGET_PAIRS = \
>        $(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_TARGET_PAIRS)
> @@ -1644,6 +1669,8 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
>      else
>        LIBGNAT_TARGET_PAIRS = \
>        $(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_64_TARGET_PAIRS)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
>      endif
>    endif
>  
> @@ -1679,6 +1706,8 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),)
>  
>    ifeq ($(strip $(MULTISUBDIR)),/64)
>      LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
> +    LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +    EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
>    else
>      LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
>    endif
> @@ -1776,8 +1805,13 @@ ifeq ($(strip $(filter-out x86_64 kfreebsd%,$(target_cpu) $(target_os))),)
>    s-taprop.adb<libgnarl/s-taprop__posix.adb \
>    s-taspri.ads<libgnarl/s-taspri__posix.ads \
>    s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
> +  $(ATOMICS_TARGET_PAIRS) \
> +  $(X86_64_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-freebsd.ads
>  
> +  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
> +
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
>    EH_MECHANISM=-gcc
> @@ -1803,8 +1837,11 @@ ifeq ($(strip $(filter-out %aarch64 freebsd%,$(target_cpu) $(target_os))),)
>    s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-freebsd.ads
>  
> +  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
> +
>    GNATLIB_SHARED = gnatlib-shared-dual
>  
>    EH_MECHANISM=-gcc
> @@ -1860,12 +1897,14 @@ ifeq ($(strip $(filter-out %86_64 freebsd%,$(target_cpu) $(target_os))),)
>    $(TRASYM_DWARF_UNIX_PAIRS) \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(X86_64_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-freebsd.ads
>  
>    GNATLIB_SHARED = gnatlib-shared-dual
>  
>    EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
>    EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
> +  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
>  
>    EH_MECHANISM=-gcc
>    THREADSLIB= -lpthread
> @@ -1889,11 +1928,13 @@ ifeq ($(strip $(filter-out %86_64 dragonfly%,$(target_cpu) $(target_os))),)
>    s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(X86_64_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-dragonfly-x86_64.ads
>  
>    GNATLIB_SHARED = gnatlib-shared-dual
>  
> -  EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
> +  EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
> +  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
>  
>    EH_MECHANISM=-gcc
>    THREADSLIB= -lpthread
> @@ -1919,6 +1960,18 @@ ifeq ($(strip $(filter-out s390% linux%,$(target_cpu) $(target_os))),)
>    s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
>    system.ads<libgnat/system-linux-s390.ads
>  
> +  ifeq ($(strip $(filter-out s390x,$(target_cpu))),)
> +    ifneq ($(strip $(MULTISUBDIR)),/32)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  else
> +    ifeq ($(strip $(MULTISUBDIR)),/64)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  endif
> +
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
>    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
> @@ -2208,7 +2261,7 @@ endif
>  
>  # PowerPC and e500v2 Linux
>  ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
> -  LIBGNAT_TARGET_PAIRS_COMMON = \
> +  LIBGNAT_TARGET_PAIRS = \
>    a-exetim.adb<libgnarl/a-exetim__posix.adb \
>    a-exetim.ads<libgnarl/a-exetim__default.ads \
>    a-intnam.ads<libgnarl/a-intnam__linux.ads \
> @@ -2220,21 +2273,30 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
>    s-linux.ads<libgnarl/s-linux.ads \
>    s-osinte.adb<libgnarl/s-osinte__posix.adb \
>    s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
> +  s-mudido.adb<libgnarl/s-mudido__affinity.adb \
> +  s-osinte.ads<libgnarl/s-osinte__linux.ads \
> +  s-osprim.adb<libgnat/s-osprim__posix.adb \
> +  s-taprop.adb<libgnarl/s-taprop__linux.adb \
> +  s-tasinf.ads<libgnarl/s-tasinf__linux.ads \
> +  s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
> +  s-taspri.ads<libgnarl/s-taspri__posix.ads \
>    $(TRASYM_DWARF_UNIX_PAIRS) \
>    s-tsmona.adb<libgnat/s-tsmona__linux.adb \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
>    system.ads<libgnat/system-linux-ppc.ads
>  
> -  LIBGNAT_TARGET_PAIRS = \
> -    $(LIBGNAT_TARGET_PAIRS_COMMON) \
> -    s-mudido.adb<libgnarl/s-mudido__affinity.adb \
> -    s-osinte.ads<libgnarl/s-osinte__linux.ads \
> -    s-osprim.adb<libgnat/s-osprim__posix.adb \
> -    s-taprop.adb<libgnarl/s-taprop__linux.adb \
> -    s-tasinf.ads<libgnarl/s-tasinf__linux.ads \
> -    s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
> -    s-taspri.ads<libgnarl/s-taspri__posix.ads
> +  ifeq ($(strip $(filter-out powerpc64,$(target_cpu))),)
> +    ifneq ($(strip $(MULTISUBDIR)),/32)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  else
> +    ifeq ($(strip $(MULTISUBDIR)),/64)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  endif
>  
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
> @@ -2301,10 +2363,12 @@ ifeq ($(strip $(filter-out aarch64% linux%,$(target_cpu) $(target_os))),)
>    s-taspri.ads<libgnarl/s-taspri__posix.ads \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-linux-arm.ads
>  
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
> +  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
>    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
>    EH_MECHANISM=-gcc
>    THREADSLIB=-lpthread -lrt
> @@ -2313,7 +2377,7 @@ ifeq ($(strip $(filter-out aarch64% linux%,$(target_cpu) $(target_os))),)
>    LIBRARY_VERSION := $(LIB_VERSION)
>  endif
>  
> -# Sparc Linux
> +# SPARC Linux
>  ifeq ($(strip $(filter-out sparc% linux%,$(target_cpu) $(target_os))),)
>    LIBGNAT_TARGET_PAIRS = \
>    a-intnam.ads<libgnarl/a-intnam__linux.ads \
> @@ -2330,6 +2394,18 @@ ifeq ($(strip $(filter-out sparc% linux%,$(target_cpu) $(target_os))),)
>    s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
>    system.ads<libgnat/system-linux-sparc.ads
>  
> +  ifeq ($(strip $(filter-out sparc64 sparcv9,$(target_cpu))),)
> +    ifneq ($(strip $(MULTISUBDIR)),/32)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  else
> +    ifeq ($(strip $(MULTISUBDIR)),/64)
> +      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
> +      EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
> +    endif
> +  endif
> +
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
>    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
> @@ -2447,11 +2523,13 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
>    s-tsmona.adb<libgnat/s-tsmona__linux.adb \
>    $(ATOMICS_TARGET_PAIRS) \
>    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
> +  $(GNATRTL_128BIT_PAIRS) \
>    system.ads<libgnat/system-linux-ia64.ads
>  
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
>    EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
> +  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ
>    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
>    EH_MECHANISM=-gcc
>    THREADSLIB=-lpthread -lrt

/usr/local/gcc/gcc-20201023/gcc/ada/Makefile.rtl:2834: *** unterminated variable reference.  Stop.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-10-23  8:11 ` Andreas Schwab
@ 2020-10-23 16:18   ` Eric Botcazou
  2020-10-23 17:14     ` Andreas Schwab
  0 siblings, 1 reply; 10+ messages in thread
From: Eric Botcazou @ 2020-10-23 16:18 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Pierre-Marie de Rodat, gcc-patches

[-- Attachment #1: Type: text/plain, Size: 192 bytes --]

> /usr/local/gcc/gcc-20201023/gcc/ada/Makefile.rtl:2834: *** unterminated
> variable reference.  Stop.

Sorry about that, tentatively fixed by the attached patch, installed.

-- 
Eric Botcazou

[-- Attachment #2: p.diff --]
[-- Type: text/x-patch, Size: 574 bytes --]

diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index 7a0c05b423d..f91085dd404 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2533,7 +2533,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
-  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ
+  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ)
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
   EH_MECHANISM=-gcc
   THREADSLIB=-lpthread -lrt

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-10-23 16:18   ` Eric Botcazou
@ 2020-10-23 17:14     ` Andreas Schwab
  2020-10-23 17:20       ` Eric Botcazou
  0 siblings, 1 reply; 10+ messages in thread
From: Andreas Schwab @ 2020-10-23 17:14 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: gcc-patches

On Okt 23 2020, Eric Botcazou wrote:

> diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
> index 7a0c05b423d..f91085dd404 100644
> --- a/gcc/ada/Makefile.rtl
> +++ b/gcc/ada/Makefile.rtl
> @@ -2533,7 +2533,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
>    TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
>  
>    EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
> -  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ
> +  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ)

That variable doesn't exist.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-10-23 17:14     ` Andreas Schwab
@ 2020-10-23 17:20       ` Eric Botcazou
  0 siblings, 0 replies; 10+ messages in thread
From: Eric Botcazou @ 2020-10-23 17:20 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: gcc-patches

[-- Attachment #1: Type: text/plain, Size: 85 bytes --]

> That variable doesn't exist.

Bummer.  Attached patch installed.

-- 
Eric Botcazou

[-- Attachment #2: p.diff --]
[-- Type: text/x-patch, Size: 576 bytes --]

diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index 39b458781a8..7b5b3344af7 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2543,7 +2543,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
   TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
 
   EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
-  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ)
+  EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
   EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
   EH_MECHANISM=-gcc
   THREADSLIB=-lpthread -lrt

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-10-22 12:12 [Ada] Build support units for 128-bit integer types on 64-bit platforms Pierre-Marie de Rodat
  2020-10-23  8:11 ` Andreas Schwab
@ 2020-11-18 11:36 ` Matthias Klose
  2020-11-18 12:11   ` Eric Botcazou
  1 sibling, 1 reply; 10+ messages in thread
From: Matthias Klose @ 2020-11-18 11:36 UTC (permalink / raw)
  To: Pierre-Marie de Rodat, gcc-patches; +Cc: Eric Botcazou

On 10/22/20 2:12 PM, Pierre-Marie de Rodat wrote:
> This enables the build of the support units for 128-bit integer types
> in the full runtime of 64-bit platforms.
> 
> Tested on x86_64-pc-linux-gnu, committed on trunk
> 
> gcc/ada/
> 
> 	* Makefile.rtl (64-bit platforms): Add GNATRTL_128BIT_PAIRS to
> 	the LIBGNAT_TARGET_PAIRS list and also GNATRTL_128BIT_OBJS to
> 	the EXTRA_GNATRTL_NONTASKING_OBJS list.
> 

that broke the build of an ada cross compiler targeting powerpc64le-linux-gnu.
target_cpu is powerpc64le which is not matched by the Makefile logic.

Ok for the trunk?

	PR ada/97859
	* Makefile.rtl (powerpc% linux%): Also match powerpc64le cpu.

--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2305,7 +2305,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu)
$(target_os))),)
   $(ATOMICS_BUILTINS_TARGET_PAIRS) \
   system.ads<libgnat/system-linux-ppc.ads

-  ifeq ($(strip $(filter-out powerpc64,$(target_cpu))),)
+  ifeq ($(strip $(filter-out powerpc64%,$(target_cpu))),)
     ifneq ($(strip $(MULTISUBDIR)),/32)
       LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
       EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-11-18 11:36 ` Matthias Klose
@ 2020-11-18 12:11   ` Eric Botcazou
  2020-11-20 20:57     ` Maciej W. Rozycki
  0 siblings, 1 reply; 10+ messages in thread
From: Eric Botcazou @ 2020-11-18 12:11 UTC (permalink / raw)
  To: Matthias Klose; +Cc: gcc-patches, Pierre-Marie de Rodat

> that broke the build of an ada cross compiler targeting
> powerpc64le-linux-gnu. target_cpu is powerpc64le which is not matched by
> the Makefile logic.
> 
> Ok for the trunk?
> 
> 	PR ada/97859
> 	* Makefile.rtl (powerpc% linux%): Also match powerpc64le cpu.

Yes, thanks.

-- 
Eric Botcazou



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-11-18 12:11   ` Eric Botcazou
@ 2020-11-20 20:57     ` Maciej W. Rozycki
  2020-12-03 11:40       ` Andreas Schwab
  0 siblings, 1 reply; 10+ messages in thread
From: Maciej W. Rozycki @ 2020-11-20 20:57 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: Matthias Klose, gcc-patches

On Wed, 18 Nov 2020, Eric Botcazou wrote:

> > that broke the build of an ada cross compiler targeting
> > powerpc64le-linux-gnu. target_cpu is powerpc64le which is not matched by
> > the Makefile logic.
> > 
> > Ok for the trunk?
> > 
> > 	PR ada/97859
> > 	* Makefile.rtl (powerpc% linux%): Also match powerpc64le cpu.
> 
> Yes, thanks.

 For the record: in a native `powerpc64le-linux-gnu' build despite the 
issue a functional compiler used to be built, except for the acats test 
suite reporting a catastrophic failure:

		=== acats support ===
Generating support files...**** Failed to compile impbit
make: [.../gcc/ada/gcc-interface/Make-lang.in:958: check-acats] Error 1 (ignored)

and then acats.log reporting:

.../gcc/gnatbind -x impbit.ali
error: "s-imgllli.ali" not found, "s-imgllli.ads" must be compiled
gnatmake: *** bind failed.
**** Failed to compile impbit

I noticed that in VAX verification and came up with the same fix, and was 
about to post it (now that I completed the VAX effort and could catch up 
with other stuff) when I noticed it has been addressed already.

 Native `powerpc64le-linux-gnu' acats test results are now all-clean:

		=== acats Summary ===
# of expected passes		2320
# of unexpected failures	0

(well, non-native acats verification sadly doesn't work anyway).

  Maciej

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-11-20 20:57     ` Maciej W. Rozycki
@ 2020-12-03 11:40       ` Andreas Schwab
  2020-12-07  8:56         ` Maciej W. Rozycki
  0 siblings, 1 reply; 10+ messages in thread
From: Andreas Schwab @ 2020-12-03 11:40 UTC (permalink / raw)
  To: Maciej W. Rozycki; +Cc: Eric Botcazou, Matthias Klose, gcc-patches

On Nov 20 2020, Maciej W. Rozycki wrote:

>  For the record: in a native `powerpc64le-linux-gnu' build despite the 
> issue a functional compiler used to be built, except for the acats test 
> suite reporting a catastrophic failure:
>
> 		=== acats support ===
> Generating support files...**** Failed to compile impbit
> make: [.../gcc/ada/gcc-interface/Make-lang.in:958: check-acats] Error 1 (ignored)
>
> and then acats.log reporting:
>
> .../gcc/gnatbind -x impbit.ali
> error: "s-imgllli.ali" not found, "s-imgllli.ads" must be compiled
> gnatmake: *** bind failed.
> **** Failed to compile impbit

This means GNATRTL_128BIT_OBJS is missing from
EXTRA_GNATRTL_NONTASKING_OBJS.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Ada] Build support units for 128-bit integer types on 64-bit platforms
  2020-12-03 11:40       ` Andreas Schwab
@ 2020-12-07  8:56         ` Maciej W. Rozycki
  0 siblings, 0 replies; 10+ messages in thread
From: Maciej W. Rozycki @ 2020-12-07  8:56 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Eric Botcazou, Matthias Klose, gcc-patches

On Thu, 3 Dec 2020, Andreas Schwab wrote:

> > .../gcc/gnatbind -x impbit.ali
> > error: "s-imgllli.ali" not found, "s-imgllli.ads" must be compiled
> > gnatmake: *** bind failed.
> > **** Failed to compile impbit
> 
> This means GNATRTL_128BIT_OBJS is missing from
> EXTRA_GNATRTL_NONTASKING_OBJS.

 Yep, I came to the same conclusion and that's what Matthias's commit 
ba97b5326048 fixed.

  Maciej

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2020-12-07  8:56 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-22 12:12 [Ada] Build support units for 128-bit integer types on 64-bit platforms Pierre-Marie de Rodat
2020-10-23  8:11 ` Andreas Schwab
2020-10-23 16:18   ` Eric Botcazou
2020-10-23 17:14     ` Andreas Schwab
2020-10-23 17:20       ` Eric Botcazou
2020-11-18 11:36 ` Matthias Klose
2020-11-18 12:11   ` Eric Botcazou
2020-11-20 20:57     ` Maciej W. Rozycki
2020-12-03 11:40       ` Andreas Schwab
2020-12-07  8:56         ` Maciej W. Rozycki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).