diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-29 12:58:32 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-29 12:58:32 +0200 |
commit | 718f39dcc150d25458c3f49e08c5114dbfec64e8 (patch) | |
tree | 6e1b74a6ffa6d93257d6fe4f61aa7566838333fe /gcc/ada/gcc-interface | |
parent | ee2e3f6bb4978d0b148e7458dd6915dbc28fdaf3 (diff) | |
download | gcc-718f39dcc150d25458c3f49e08c5114dbfec64e8.zip gcc-718f39dcc150d25458c3f49e08c5114dbfec64e8.tar.gz gcc-718f39dcc150d25458c3f49e08c5114dbfec64e8.tar.bz2 |
[multiple changes]
2011-08-29 Tristan Gingold <gingold@adacore.com>
* s-interr-hwint.adb: Revert previous patch (defer aborts in ZCX case).
2011-08-29 Geert Bosch <bosch@adacore.com>
* a-ngelfu.adb (Tan): Do not raise Constraint_Error if the argument is
the closest machine number to Pi / 2.0.
2011-08-29 Jose Ruiz <ruiz@adacore.com>
* impunit.adb (Non_Imp_File_Names_12): Add a-synbar for new Ada 2012
package Ada.Synchronous_Barriers.
* a-synbar.ads, a-synbar.adb, a-synbar-posix.ads, a-synbar-posix.adb:
Add new specs and bodies for Ada.Synchronous_Barriers. There is a
default implementation using protected objects and another one
a-synbar-posix using POSIX barriers as the underlying support.
* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for Linux (x86,
x86_64, ia64) and MIPS IRIX): Use the a-synbar-posix implementation of
Ada.Synchronous_Barriers which uses POSIX barriers (more efficient).
* Makefile.rtl (GNATRTL_TASKING_OBJS): Add a-synbar.o
From-SVN: r178200
Diffstat (limited to 'gcc/ada/gcc-interface')
-rw-r--r-- | gcc/ada/gcc-interface/Makefile.in | 113 |
1 files changed, 70 insertions, 43 deletions
diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in index c80480e..a8b911e 100644 --- a/gcc/ada/gcc-interface/Makefile.in +++ b/gcc/ada/gcc-interface/Makefile.in @@ -420,7 +420,26 @@ ATOMICS_TARGET_PAIRS += \ a-stzunb.adb<a-stzunb-shared.adb \ a-stzunb.ads<a-stzunb-shared.ads \ a-szunau.adb<a-szunau-shared.adb \ - a-szuzti.adb<a-szuzti-shared.adb \ + a-szuzti.adb<a-szuzti-shared.adb + +ATOMICS_BUILTINS_TARGET_PAIRS += \ + s-atocou.adb<s-atocou-builtin.adb + +ATOMICS_X86_TARGET_PAIRS += \ + s-atocou.adb<s-atocou-x86.adb + +# Special version of units for x86 and x86-64 platforms. + +X86_TARGET_PAIRS = \ + a-numaux.ads<a-numaux-x86.ads \ + a-numaux.adb<a-numaux-x86.adb \ + g-bytswa.adb<g-bytswa-x86.adb \ + s-atocou.adb<s-atocou-x86.adb + +X86_64_TARGET_PAIRS = \ + a-numaux.ads<a-numaux-x86.ads \ + a-numaux.adb<a-numaux-x86.adb \ + g-bytswa.adb<g-bytswa-x86.adb \ s-atocou.adb<s-atocou-builtin.adb LIB_VERSION = $(strip $(shell grep ' Library_Version :' $(fsrcpfx)ada/gnatvsn.ads | sed -e 's/.*"\(.*\)".*/\1/')) @@ -497,7 +516,8 @@ ifeq ($(strip $(filter-out e500% powerpc% wrs vxworks,$(targ))),) g-stsifd.adb<g-stsifd-sockets.adb \ g-trasym.ads<g-trasym-unimplemented.ads \ g-trasym.adb<g-trasym-unimplemented.adb \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS=\ mlib-tgt-specific.adb<mlib-tgt-specific-vxworks.adb \ @@ -597,7 +617,8 @@ ifeq ($(strip $(filter-out powerpc% wrs vxworksae,$(targ))),) g-trasym.ads<g-trasym-unimplemented.ads \ g-trasym.adb<g-trasym-unimplemented.adb \ system.ads<system-vxworks-ppc-vthread.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS=\ mlib-tgt-specific.adb<mlib-tgt-specific-vxworks.adb \ @@ -661,6 +682,7 @@ ifeq ($(strip $(filter-out e500% powerpc% wrs vxworksmils,$(targ))),) g-trasym.adb<g-trasym-unimplemented.adb \ system.ads<system-vxworks-ppc.ads \ $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) \ $(DUMMY_SOCKETS_TARGET_PAIRS) TOOLS_TARGET_PAIRS=\ @@ -716,7 +738,7 @@ ifeq ($(strip $(filter-out %86 wrs vxworksae vxworksmils,$(targ))),) g-trasym.adb<g-trasym-unimplemented.adb \ system.ads<system-vxworks-x86.ads \ $(ATOMICS_TARGET_PAIRS) \ - s-atocou.adb<s-atocou-x86.adb + $(ATOMICS_X86_TARGET_PAIRS) TOOLS_TARGET_PAIRS=\ mlib-tgt-specific.adb<mlib-tgt-specific-vxworks.adb \ @@ -815,7 +837,7 @@ ifeq ($(strip $(filter-out %86 wrs vxworks,$(targ))),) g-trasym.ads<g-trasym-unimplemented.ads \ g-trasym.adb<g-trasym-unimplemented.adb \ $(ATOMICS_TARGET_PAIRS) \ - s-atocou.adb<s-atocou-x86.adb + $(ATOMICS_X86_TARGET_PAIRS) TOOLS_TARGET_PAIRS=\ mlib-tgt-specific.adb<mlib-tgt-specific-vxworks.adb \ @@ -980,7 +1002,8 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(targ))),) LIBGNAT_TARGET_PAIRS_64 = \ system.ads<system-solaris-sparcv9.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) ifeq ($(strip $(filter-out sparc sun solaris%,$(targ))),) ifeq ($(strip $(MULTISUBDIR)),/sparcv9) @@ -1050,30 +1073,14 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(arch) $(osys))),) g-soliop.ads<g-soliop-solaris.ads \ $(ATOMICS_TARGET_PAIRS) - LIBGNAT_TARGET_PAIRS_32 = \ - g-bytswa.adb<g-bytswa-x86.adb \ - s-atocou.adb<s-atocou-x86.adb \ - system.ads<system-solaris-x86.ads - - LIBGNAT_TARGET_PAIRS_64 = \ - system.ads<system-solaris-x86_64.ads - - ifeq ($(strip $(filter-out %86 solaris2%,$(arch) $(osys))),) - ifeq ($(strip $(MULTISUBDIR)),/amd64) - LIBGNAT_TARGET_PAIRS = \ - $(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_64) - else - LIBGNAT_TARGET_PAIRS = \ - $(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_32) - endif + ifeq ($(strip $(MULTISUBDIR)),/amd64) + LIBGNAT_TARGET_PAIRS += \ + $(X86_64_TARGET_PAIRS) \ + system.ads<system-solaris-x86_64.ads else - ifeq ($(strip $(MULTISUBDIR)),/32) - LIBGNAT_TARGET_PAIRS = \ - $(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_32) - else - LIBGNAT_TARGET_PAIRS = \ - $(LIBGNAT_TARGET_PAIRS_COMMON) $(LIBGNAT_TARGET_PAIRS_64) - endif + LIBGNAT_TARGET_PAIRS += \ + $(X86_TARGET_PAIRS) \ + system.ads<system-solaris-x86.ads endif TOOLS_TARGET_PAIRS=mlib-tgt-specific.adb<mlib-tgt-specific-solaris.adb @@ -1092,13 +1099,15 @@ ifeq ($(strip $(filter-out %86 linux%,$(arch) $(osys))),) a-intnam.ads<a-intnam-linux.ads \ a-numaux.adb<a-numaux-x86.adb \ a-numaux.ads<a-numaux-x86.ads \ + a-synbar.adb<a-synbar-posix.adb \ + a-synbar.ads<a-synbar-posix.ads \ g-bytswa.adb<g-bytswa-x86.adb \ s-inmaop.adb<s-inmaop-posix.adb \ s-intman.adb<s-intman-posix.adb \ s-tpopsp.adb<s-tpopsp-tls.adb \ g-sercom.adb<g-sercom-linux.adb \ $(ATOMICS_TARGET_PAIRS) \ - s-atocou.adb<s-atocou-x86.adb + $(ATOMICS_X86_TARGET_PAIRS) ifeq ($(strip $(filter-out marte,$(THREAD_KIND))),) LIBGNAT_TARGET_PAIRS += \ @@ -1178,7 +1187,7 @@ ifeq ($(strip $(filter-out %86 kfreebsd%,$(arch) $(osys))),) s-tpopsp.adb<s-tpopsp-posix-foreign.adb \ system.ads<system-freebsd-x86.ads \ $(ATOMICS_TARGET_PAIRS) \ - s-atocou.adb<s-atocou-x86.adb + $(ATOMICS_X86_TARGET_PAIRS) TOOLS_TARGET_PAIRS = \ mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb \ @@ -1235,7 +1244,7 @@ ifeq ($(strip $(filter-out %86 freebsd%,$(arch) $(osys))),) s-tpopsp.adb<s-tpopsp-posix.adb \ system.ads<system-freebsd-x86.ads \ $(ATOMICS_TARGET_PAIRS) \ - s-atocou.adb<s-atocou-x86.adb + $(ATOMICS_X86_TARGET_PAIRS) TOOLS_TARGET_PAIRS = \ mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb @@ -1297,6 +1306,8 @@ endif ifeq ($(strip $(filter-out mips sgi irix6%,$(targ))),) LIBGNAT_TARGET_PAIRS = \ a-intnam.ads<a-intnam-irix.ads \ + a-synbar.adb<a-synbar-posix.adb \ + a-synbar.ads<a-synbar-posix.ads \ s-inmaop.adb<s-inmaop-posix.adb \ s-intman.adb<s-intman-irix.adb \ s-mastop.adb<s-mastop-irix.adb \ @@ -1391,7 +1402,8 @@ ifeq ($(strip $(filter-out ibm aix%,$(manu) $(osys))),) s-taprop.adb<s-taprop-posix.adb \ s-taspri.ads<s-taspri-posix.ads \ s-tpopsp.adb<s-tpopsp-posix.adb \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) LIBGNAT_TARGET_PAIRS_32 = \ system.ads<system-aix.ads @@ -1453,7 +1465,8 @@ ifeq ($(strip $(filter-out alpha% dec osf%,$(targ))),) s-tpopsp.adb<s-tpopsp-posix-foreign.adb \ s-traceb.adb<s-traceb-mastop.adb \ system.ads<system-tru64.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS=mlib-tgt-specific.adb<mlib-tgt-specific-tru64.adb @@ -1520,7 +1533,8 @@ ifeq ($(strip $(filter-out alpha64 ia64 dec hp vms% openvms% alphavms%,$(targ))) s-vaflop.adb<s-vaflop-vms-ia64.adb \ system.ads<system-vms-ia64.ads \ s-parame.ads<s-parame-vms-ia64.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS= \ mlib-tgt-specific.adb<mlib-tgt-specific-vms-ia64.adb \ @@ -1540,7 +1554,8 @@ ifeq ($(strip $(filter-out alpha64 ia64 dec hp vms% openvms% alphavms%,$(targ))) s-vaflop.adb<s-vaflop-vms-alpha.adb \ system.ads<system-vms_64.ads \ s-parame.ads<s-parame-vms-alpha.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS= \ mlib-tgt-specific.adb<mlib-tgt-specific-vms-alpha.adb \ @@ -1593,7 +1608,7 @@ ifeq ($(strip $(filter-out cygwin32% mingw32% pe,$(osys))),) g-stsifd.adb<g-stsifd-sockets.adb \ g-soliop.ads<g-soliop-mingw.ads \ $(ATOMICS_TARGET_PAIRS) \ - s-atocou.adb<s-atocou-x86.adb + $(ATOMICS_X86_TARGET_PAIRS) ifeq ($(strip $(filter-out rtx_w32 rtx_rtss,$(THREAD_KIND))),) LIBGNAT_TARGET_PAIRS += \ @@ -1786,13 +1801,16 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(arch) $(osys))),) a-exetim.adb<a-exetim-posix.adb \ a-exetim.ads<a-exetim-default.ads \ a-intnam.ads<a-intnam-linux.ads \ + a-synbar.adb<a-synbar-posix.adb \ + a-synbar.ads<a-synbar-posix.ads \ s-inmaop.adb<s-inmaop-posix.adb \ s-intman.adb<s-intman-posix.adb \ s-linux.ads<s-linux.ads \ s-osinte.adb<s-osinte-posix.adb \ s-tpopsp.adb<s-tpopsp-tls.adb \ g-sercom.adb<g-sercom-linux.adb \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) ifeq ($(strip $(filter-out xenomai,$(THREAD_KIND))),) LIBGNAT_TARGET_PAIRS = \ @@ -1983,6 +2001,8 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(arch) $(osys))),) a-exetim.ads<a-exetim-default.ads \ a-intnam.ads<a-intnam-linux.ads \ a-numaux.ads<a-numaux-libc-x86.ads \ + a-synbar.adb<a-synbar-posix.adb \ + a-synbar.ads<a-synbar-posix.ads \ s-inmaop.adb<s-inmaop-posix.adb \ s-intman.adb<s-intman-posix.adb \ s-linux.ads<s-linux.ads \ @@ -1996,7 +2016,8 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(arch) $(osys))),) s-taspri.ads<s-taspri-posix-noaltstack.ads \ g-sercom.adb<g-sercom-linux.adb \ system.ads<system-linux-ia64.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS = \ mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb \ @@ -2023,7 +2044,8 @@ ifeq ($(strip $(filter-out ia64% hp hpux%,$(targ))),) s-taspri.ads<s-taspri-posix-noaltstack.ads \ s-tpopsp.adb<s-tpopsp-posix-foreign.adb \ system.ads<system-hpux-ia64.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS = \ mlib-tgt-specific.adb<mlib-tgt-specific-ia64-hpux.adb @@ -2054,7 +2076,8 @@ ifeq ($(strip $(filter-out alpha% linux%,$(arch) $(osys))),) g-trasym.ads<g-trasym-unimplemented.ads \ g-trasym.adb<g-trasym-unimplemented.adb \ system.ads<system-linux-alpha.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS = \ mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb \ @@ -2075,6 +2098,8 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(arch) $(osys))),) a-intnam.ads<a-intnam-linux.ads \ a-numaux.adb<a-numaux-x86.adb \ a-numaux.ads<a-numaux-x86.ads \ + a-synbar.adb<a-synbar-posix.adb \ + a-synbar.ads<a-synbar-posix.ads \ s-inmaop.adb<s-inmaop-posix.adb \ s-intman.adb<s-intman-posix.adb \ s-linux.ads<s-linux.ads \ @@ -2088,7 +2113,8 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(arch) $(osys))),) s-taspri.ads<s-taspri-posix.ads \ g-sercom.adb<g-sercom-linux.adb \ system.ads<system-linux-x86_64.ads \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) TOOLS_TARGET_PAIRS = \ mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb \ @@ -2145,7 +2171,8 @@ ifeq ($(strip $(filter-out darwin%,$(osys))),) g-trasym.adb<g-trasym-unimplemented.adb \ a-numaux.ads<a-numaux-x86.ads \ a-numaux.adb<a-numaux-x86.adb \ - $(ATOMICS_TARGET_PAIRS) + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) ifeq ($(strip $(MULTISUBDIR)),/i386) LIBGNAT_TARGET_PAIRS += \ system.ads<system-darwin-x86.ads |