summaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-06 09:47:48 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-06 09:47:48 +0000
commit35bd138fda3452b82b17ab4f54ec87242311f959 (patch)
tree49e5167fbe92e8c71bbc6d289a4ae8a5c223d70b /gcc/ada/gcc-interface
parentc050b7e5f0a13ae1f4ec089703ab0adb741723b3 (diff)
downloadgcc-35bd138fda3452b82b17ab4f54ec87242311f959.tar.gz
2015-01-06 Pascal Obry <obry@adacore.com>
* adaint.c (ProcListEvt): Set to NULL. * rtinit.c: New file. (__gnat_rt_init_count): New reference counter set to 0. (__gnat_runtime_initialize): Move code here from __gnat_initialize when this code is actually needed for the runtime initialization. This routine returns immediately if the initialization has already been done. * final.c: Revert previous change. * rtfinal.c: New file. (__gnat_runtime_finalize)[Win32]: Add finalization of the critical section and event. The default version of this routine is empty (except for the reference counting code). This routine returns immediately if some others libraries are referencing the runtime. * bindgen.adb (Gen_Adainit): Generate call to Runtime_Initialize remove circuitry to initialize the signal handler as this is now done by the runtime initialization routine. (Gen_Adafinal): Generate call to Runtime_Finalize. * gnat_ugn.texi: Update documentation about concurrency and initialization/finalization of the run-time. * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Add references to rtfinal.o and rtinit.o git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219238 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/gcc-interface')
-rw-r--r--gcc/ada/gcc-interface/Make-lang.in6
-rw-r--r--gcc/ada/gcc-interface/Makefile.in4
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ada/gcc-interface/Make-lang.in b/gcc/ada/gcc-interface/Make-lang.in
index efae513ef79..6fa4f4cffc5 100644
--- a/gcc/ada/gcc-interface/Make-lang.in
+++ b/gcc/ada/gcc-interface/Make-lang.in
@@ -223,8 +223,8 @@ GCC_LLINK=$(LLINKER) $(GCC_LINKERFLAGS) $(LDFLAGS)
# Object files for gnat1 from C sources.
GNAT1_C_OBJS = ada/adadecode.o ada/adaint.o ada/argv.o ada/cio.o \
ada/cstreams.o ada/env.o ada/init.o ada/initialize.o ada/raise.o \
- ada/seh_init.o ada/targext.o ada/cuintp.o ada/decl.o \
- ada/misc.o ada/utils.o ada/utils2.o ada/trans.o ada/targtyps.o
+ ada/seh_init.o ada/targext.o ada/cuintp.o ada/decl.o ada/rtfinal.o \
+ ada/rtinit.o ada/misc.o ada/utils.o ada/utils2.o ada/trans.o ada/targtyps.o
# Object files from Ada sources that are used by gnat1
GNAT_ADA_OBJS = \
@@ -513,6 +513,8 @@ GNATBIND_OBJS = \
ada/raise.o \
ada/restrict.o \
ada/rident.o \
+ ada/rtfinal.o \
+ ada/rtinit.o \
ada/s-addope.o \
ada/s-assert.o \
ada/s-carun8.o \
diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in
index eb24f113d05..870cfab5ea5 100644
--- a/gcc/ada/gcc-interface/Makefile.in
+++ b/gcc/ada/gcc-interface/Makefile.in
@@ -2400,7 +2400,7 @@ endif
# thread.c is special as put into GNATRTL_TASKING_OBJS by Makefile.rtl
LIBGNAT_OBJS = adadecode.o adaint.o argv.o aux-io.o \
cal.o cio.o cstreams.o ctrl_c.o \
- env.o errno.o exit.o expect.o final.o \
+ env.o errno.o exit.o expect.o final.o rtfinal.o rtinit.o \
init.o initialize.o locales.o mkdir.o \
raise.o seh_init.o socket.o sysdep.o \
targext.o terminals.o tracebak.o \
@@ -3046,6 +3046,8 @@ errno.o : errno.c
exit.o : adaint.h exit.c
expect.o : expect.c
final.o : final.c
+rtfinal.o : rtfinal.c
+rtinit.o : rtinit.c
locales.o : locales.c
mkdir.o : mkdir.c
socket.o : socket.c gsocket.h