aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2024-03-15 16:46:16 +0100
committerMarc Poulhiès <poulhies@adacore.com>2024-05-17 10:21:07 +0200
commitfc477a3f361dd5e72512e4ad42ef204af7c4c3e5 (patch)
tree2f48ef3ddeceeea42cce4a9bd5a1736435741d98 /libcpp
parent15b5a95d36a3c8cc35189aa951bdcdbf59ad4160 (diff)
downloadgcc-fc477a3f361dd5e72512e4ad42ef204af7c4c3e5.zip
gcc-fc477a3f361dd5e72512e4ad42ef204af7c4c3e5.tar.gz
gcc-fc477a3f361dd5e72512e4ad42ef204af7c4c3e5.tar.bz2
ada: Start the initialization of the tasking runtime earlier
This installs the tasking versions of the RTS_Lock manipulation routines very early, before the elaboration of all the Ada units of the program, including those of the runtime, because this elaboration may require the initialization of RTS_Lock objects. gcc/ada/ * bindgen.adb (Gen_Adainit): Generate declaration and call to the imported procedure __gnat_tasking_runtime_initialize if need be. * libgnat/s-soflin.ads (Locking Soft-Links): Add commentary. * libgnarl/s-tasini.adb (Tasking_Runtime_Initialize): New procedure exported as __gnat_tasking_runtime_initialize. Initialize RTS_Lock manipulation routines here instead of... (Init_RTS): ...here.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions