OSDN Git Service

* raise-gcc.c: Do not include coretypes.h and tm.h.
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 30 Aug 2011 16:35:54 +0000 (16:35 +0000)
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 30 Aug 2011 16:35:54 +0000 (16:35 +0000)
(setup_to_install): Remove test for compiler macro.
* targext.c: Document use for the library.
* gcc-interface/Makefile.in: Fix comment on the use of IN_GCC.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178333 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/ChangeLog
gcc/ada/gcc-interface/Makefile.in
gcc/ada/raise-gcc.c
gcc/ada/targext.c

index 5bc7819..ffa5387 100644 (file)
@@ -1,5 +1,12 @@
 2011-08-30  Eric Botcazou  <ebotcazou@adacore.com>
 
+       * raise-gcc.c: Do not include coretypes.h and tm.h.
+       (setup_to_install): Remove test for compiler macro.
+       * targext.c: Document use for the library.
+       * gcc-interface/Makefile.in: Fix comment on the use of IN_GCC.
+
+2011-08-30  Eric Botcazou  <ebotcazou@adacore.com>
+
        * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not convert
        the expression to the nominal type if the latter is a record type with
        a variant part and the type of the former is a record type without one.
index 30993ba..7fb1613 100644 (file)
@@ -223,8 +223,9 @@ endif
 
 all.indirect: Makefile ../gnat1$(exeext)
 
-# IN_GCC distinguishes between code compiled into GCC itself and other
-# programs built during a bootstrap.
+# IN_GCC is meant to distinguish between code compiled into GCC itself, i.e.
+# for the host, and the rest.  But we also use it for the tools (link.c) and
+# even break the host/target wall by using it for the library (targext.c).
 # autoconf inserts -DCROSS_DIRECTORY_STRUCTURE if we are building a cross
 # compiler which does not use the native libraries and headers.
 INTERNAL_CFLAGS = @CROSS@ -DIN_GCC
index 729b76c..0ced559 100644 (file)
 #ifdef IN_RTS
 #include "tconfig.h"
 #include "tsystem.h"
-/* In the top-of-tree GCC, tconfig does not include tm.h, but in GCC 3.2
-   it does.  To avoid branching raise.c just for that purpose, we kludge by
-   looking for a symbol always defined by tm.h and if it's not defined,
-   we include it.  */
-#ifndef FIRST_PSEUDO_REGISTER
-#include "coretypes.h"
-#include "tm.h"
-#endif
 #include <sys/stat.h>
 #include <stdarg.h>
 typedef char bool;
@@ -1007,11 +999,6 @@ setup_to_install (_Unwind_Context *uw_context,
                   _Unwind_Ptr uw_landing_pad,
                   int uw_filter)
 {
-#ifndef EH_RETURN_DATA_REGNO
-  /* We should not be called if the appropriate underlying support is not
-     there.  */
-  abort ();
-#else
   /* 1/ exception object pointer, which might be provided back to
      _Unwind_Resume (and thus to this personality routine) if we are jumping
      to a cleanup.  */
@@ -1026,7 +1013,6 @@ setup_to_install (_Unwind_Context *uw_context,
   /* Setup the address we should jump at to reach the code where there is the
      "something" we found.  */
   _Unwind_SetIP (uw_context, uw_landing_pad);
-#endif
 }
 
 /* The following is defined from a-except.adb. Its purpose is to enable
index df4286c..6a9f970 100644 (file)
@@ -31,7 +31,9 @@
 
 /*  This file contains target-specific parameters describing the file
     extension for object and executable files.  It is used by the compiler,
-    binder and tools.  */
+    binder, library and tools.
+    Note that, in order to have access to the TARGET_* macros used below,
+    the file must be compiled with IN_GCC defined, even for the library.  */
 
 #ifdef __cplusplus
 extern "C" {