aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2015-11-30 12:06:30 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2015-11-30 12:06:30 +0000
commitc8a23c29f7e61990d9f3fb36b4dfab8f46efa0ef (patch)
treeb249400df9619c47d1d0e2bde3daa24a9d0a68f8 /gcc/ada/gcc-interface
parent4f852a1affeb624889e71701bf80f47a08e02361 (diff)
downloadgcc-c8a23c29f7e61990d9f3fb36b4dfab8f46efa0ef.zip
gcc-c8a23c29f7e61990d9f3fb36b4dfab8f46efa0ef.tar.gz
gcc-c8a23c29f7e61990d9f3fb36b4dfab8f46efa0ef.tar.bz2
* gcc-interface/trans.c (gigi): Fix initialization order.
From-SVN: r231068
Diffstat (limited to 'gcc/ada/gcc-interface')
-rw-r--r--gcc/ada/gcc-interface/trans.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
index eda1b3a..143d214 100644
--- a/gcc/ada/gcc-interface/trans.c
+++ b/gcc/ada/gcc-interface/trans.c
@@ -627,8 +627,16 @@ gigi (Node_Id gnat_root,
main_identifier_node = get_identifier ("main");
- /* Install the builtins we might need, either internally or as
- user available facilities for Intrinsic imports. */
+ /* If we are using the GCC exception mechanism, let GCC know. */
+ if (Back_End_Exceptions ())
+ gnat_init_gcc_eh ();
+
+ /* Initialize the GCC support for FP operations. */
+ gnat_init_gcc_fp ();
+
+ /* Install the builtins we might need, either internally or as user-available
+ facilities for Intrinsic imports. Note that this must be done after the
+ GCC exception mechanism is initialized. */
gnat_install_builtins ();
vec_safe_push (gnu_except_ptr_stack, NULL_TREE);
@@ -641,13 +649,6 @@ gigi (Node_Id gnat_root,
targetm.asm_out.output_ident
(TREE_STRING_POINTER (gnat_to_gnu (Ident_String (Main_Unit))));
- /* If we are using the GCC exception mechanism, let GCC know. */
- if (Back_End_Exceptions ())
- gnat_init_gcc_eh ();
-
- /* Initialize the GCC support for FP operations. */
- gnat_init_gcc_fp ();
-
/* Force -fno-strict-aliasing if the configuration pragma was seen. */
if (No_Strict_Aliasing_CP)
flag_strict_aliasing = 0;