mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-01-12 07:54:35 +08:00
Makefile.in: Set EH mechanism to ZCX for FreeBSD.
2006-10-31 Thomas Quinot <quinot@adacore.com> Eric Botcazou <ebotcazou@adacore.com> Arnaud Charlet <charlet@adacore.com> * Makefile.in: Set EH mechanism to ZCX for FreeBSD. (NO_REORDER_ADAFLAGS): New var defined to -fno-toplevel-reorder if possible. (a-except.o): Pass it to the compiler. (gnatlib-shared-vms): Removed -nostartfiles switch in link step. (LIBGNAT_TARGET_PAIRS for Windows): Avoid the use of the specific a-calend-mingw.adb version. * Makefile.rtl: Added s-dsaser. Add object entries for Ada.Calendar.[Arithmetic/Formatting/Time_Zones] (GNATRTL_TASKING_OBJS): Add Ada.Dispatching and Ada.Dispatching.Round_Robin. Added new unit Ada.Containers.Restricted_Bounded_Doubly_Linked_Lists * Make-lang.in: Remove all references to gt-ada-decl.h. Add concatenation (s-strops/s-sopco3/s-sopco4/s-sopco5) to compiler sources. Add dependency on ada/s-restri.o for GNAT1 and GNATBIND objects. Update dependencies. * system-freebsd-x86.ads: Make ZCX the default EH mechanism for FreeBSD From-SVN: r118285
This commit is contained in:
parent
53973dcf9d
commit
b8783398c1
3718
gcc/ada/Make-lang.in
3718
gcc/ada/Make-lang.in
File diff suppressed because it is too large
Load Diff
@ -843,6 +843,7 @@ ifeq ($(strip $(filter-out %86 freebsd%,$(arch) $(osys))),)
|
||||
mlib-tgt.adb<mlib-tgt-linux.adb
|
||||
GNATLIB_SHARED = gnatlib-shared-dual
|
||||
|
||||
EH_MECHANISM=-gcc
|
||||
THREADSLIB= -lc_r
|
||||
GMEM_LIB = gmemlib
|
||||
PREFIX_OBJS = $(PREFIX_REAL_OBJS)
|
||||
@ -1197,7 +1198,6 @@ endif
|
||||
|
||||
ifeq ($(strip $(filter-out cygwin32% mingw32% pe,$(osys))),)
|
||||
LIBGNAT_TARGET_PAIRS = \
|
||||
a-calend.adb<a-calend-mingw.adb \
|
||||
a-dirval.adb<a-dirval-mingw.adb \
|
||||
a-excpol.adb<a-excpol-abort.adb \
|
||||
a-intnam.ads<a-intnam-mingw.ads \
|
||||
@ -1847,7 +1847,7 @@ gnatlib-shared-vms:
|
||||
objdump --syms $(LIBGNAT_OBJS) $(GNATRTL_NONTASKING_OBJS) | \
|
||||
$(SHLIB_SYMVEC) >> SYMVEC_$$$$.opt && \
|
||||
echo "case_sensitive=NO" >> SYMVEC_$$$$.opt && \
|
||||
../../xgcc -g -B../../ -nostartfiles -shared -shared-libgcc \
|
||||
../../xgcc -g -B../../ -shared -shared-libgcc \
|
||||
-o libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) libgnat.a \
|
||||
sys\$$library:trace.exe \
|
||||
--for-linker=/noinform \
|
||||
@ -1857,7 +1857,7 @@ gnatlib-shared-vms:
|
||||
objdump --syms $(GNATRTL_TASKING_OBJS) | \
|
||||
$(SHLIB_SYMVEC) >> SYMVEC_$$$$.opt && \
|
||||
echo "case_sensitive=NO" >> SYMVEC_$$$$.opt && \
|
||||
../../xgcc -g -B../../ -nostartfiles -shared -shared-libgcc \
|
||||
../../xgcc -g -B../../ -shared -shared-libgcc \
|
||||
-o libgnarl$(hyphen)$(LIBRARY_VERSION)$(soext) \
|
||||
libgnarl.a libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
|
||||
sys\$$library:trace.exe \
|
||||
@ -1921,8 +1921,8 @@ ADA_RTL_OBJ_DIR = $(libsubdir)/adalib
|
||||
# force no sibling call optimization on s-traceb.o so the number of stack
|
||||
# frames to be skipped when computing a call chain is not modified by
|
||||
# optimization. However we can do that only when building the runtime
|
||||
# (not the compiler) because the -fno-optimize-sibling-calls exists
|
||||
# only in GCC 3.
|
||||
# (not the compiler) because the -fno-optimize-sibling-calls option exists
|
||||
# only in GCC 3 and above.
|
||||
|
||||
ifneq (,$(findstring xgcc,$(CC)))
|
||||
NO_SIBLING_ADAFLAGS=-fno-optimize-sibling-calls
|
||||
@ -1942,13 +1942,24 @@ s-tasdeb.o : s-tasdeb.adb s-tasdeb.ads
|
||||
$(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O0 $(ADA_INCLUDES) \
|
||||
$< $(OUTPUT_OPTION)
|
||||
|
||||
# force no function reordering on a-except.o because of the exclusion bounds
|
||||
# mechanism (see the source file for more detailed information). However we
|
||||
# can do that only when building the runtime (not the compiler) because the
|
||||
# -fno-toplevel-reorder option exists only in GCC 4.2 and above.
|
||||
|
||||
ifneq (,$(findstring xgcc,$(CC)))
|
||||
NO_REORDER_ADAFLAGS=-fno-toplevel-reorder
|
||||
else
|
||||
NO_REORDER_ADAFLAGS=
|
||||
endif
|
||||
|
||||
# force debugging information on a-except.o so that it is always
|
||||
# possible to set conditional breakpoints on exceptions.
|
||||
# use -O1 otherwise gdb isn't able to get a full backtrace on mips targets.
|
||||
|
||||
a-except.o : a-except.adb a-except.ads
|
||||
$(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O1 -fno-inline \
|
||||
$(ADA_INCLUDES) $< $(OUTPUT_OPTION)
|
||||
$(NO_REORDER_ADAFLAGS) $(ADA_INCLUDES) $< $(OUTPUT_OPTION)
|
||||
|
||||
# force debugging information on s-assert.o so that it is always
|
||||
# possible to set breakpoint on assert failures.
|
||||
|
@ -26,6 +26,8 @@
|
||||
|
||||
# Objects needed only for tasking
|
||||
GNATRTL_TASKING_OBJS= \
|
||||
a-diroro$(objext) \
|
||||
a-dispat$(objext) \
|
||||
a-dynpri$(objext) \
|
||||
a-interr$(objext) \
|
||||
a-intsig$(objext) \
|
||||
@ -75,8 +77,11 @@ GNATRTL_TASKING_OBJS= \
|
||||
|
||||
# Objects needed for non-tasking.
|
||||
GNATRTL_NONTASKING_OBJS= \
|
||||
a-calari$(objext) \
|
||||
a-caldel$(objext) \
|
||||
a-calend$(objext) \
|
||||
a-calfor$(objext) \
|
||||
a-catizo$(objext) \
|
||||
a-cdlili$(objext) \
|
||||
a-cgaaso$(objext) \
|
||||
a-cgarso$(objext) \
|
||||
@ -113,6 +118,7 @@ GNATRTL_NONTASKING_OBJS= \
|
||||
a-crbltr$(objext) \
|
||||
a-crbtgk$(objext) \
|
||||
a-crbtgo$(objext) \
|
||||
a-crdlli$(objext) \
|
||||
a-cwila1$(objext) \
|
||||
a-cwila9$(objext) \
|
||||
a-decima$(objext) \
|
||||
@ -397,6 +403,7 @@ GNATRTL_NONTASKING_OBJS= \
|
||||
s-crtl$(objext) \
|
||||
s-crc32$(objext) \
|
||||
s-direio$(objext) \
|
||||
s-dsaser$(objext) \
|
||||
s-errrep$(objext) \
|
||||
s-exctab$(objext) \
|
||||
s-exnint$(objext) \
|
||||
|
@ -5,9 +5,9 @@
|
||||
-- S Y S T E M --
|
||||
-- --
|
||||
-- S p e c --
|
||||
-- (FreeBSD/x86 Version) --
|
||||
-- (FreeBSD/x86 Version) --
|
||||
-- --
|
||||
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. --
|
||||
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
|
||||
-- --
|
||||
-- This specification is derived from the Ada Reference Manual for use with --
|
||||
-- GNAT. The copyright notice above, and the license provisions that follow --
|
||||
@ -88,6 +88,7 @@ package System is
|
||||
|
||||
type Bit_Order is (High_Order_First, Low_Order_First);
|
||||
Default_Bit_Order : constant Bit_Order := Low_Order_First;
|
||||
pragma Warnings (Off, Default_Bit_Order); -- kill constant condition warning
|
||||
|
||||
-- Priority-related Declarations (RM D.1)
|
||||
|
||||
@ -133,7 +134,7 @@ private
|
||||
Preallocated_Stacks : constant Boolean := False;
|
||||
Signed_Zeros : constant Boolean := True;
|
||||
Stack_Check_Default : constant Boolean := False;
|
||||
Stack_Check_Probes : constant Boolean := False;
|
||||
Stack_Check_Probes : constant Boolean := True;
|
||||
Support_64_Bit_Divides : constant Boolean := True;
|
||||
Support_Aggregates : constant Boolean := True;
|
||||
Support_Composite_Assign : constant Boolean := True;
|
||||
@ -141,8 +142,8 @@ private
|
||||
Support_Long_Shifts : constant Boolean := True;
|
||||
Suppress_Standard_Library : constant Boolean := False;
|
||||
Use_Ada_Main_Program_Name : constant Boolean := False;
|
||||
ZCX_By_Default : constant Boolean := False;
|
||||
GCC_ZCX_Support : constant Boolean := False;
|
||||
ZCX_By_Default : constant Boolean := True;
|
||||
GCC_ZCX_Support : constant Boolean := True;
|
||||
Front_End_ZCX_Support : constant Boolean := False;
|
||||
|
||||
-- Obsolete entries, to be removed eventually (bootstrap issues!)
|
||||
|
Loading…
Reference in New Issue
Block a user