OSDN Git Service

part of restore of powerpc-darwin Ada bootstrap
authoriains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Sep 2011 09:20:12 +0000 (09:20 +0000)
committeriains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Sep 2011 09:20:12 +0000 (09:20 +0000)
* traceback.c (Darwin) USE_GCC_UNWINDER for Darwin
versions >= 8.

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

gcc/ada/ChangeLog
gcc/ada/tracebak.c

index da25c72..d1c5204 100644 (file)
@@ -1,3 +1,8 @@
+2011-09-08  Iain Sandoe  <iains@gcc.gnu.org>
+
+       * traceback.c (Darwin) USE_GCC_UNWINDER for Darwin
+       versions >= 8.
+
 2011-09-07  Iain Sandoe  <iains@gcc.gnu.org>
 
        * gcc-interface/Makefile.in (darwin): Provide powerpc64 system 
index a8a200d..ea7bbfe 100644 (file)
@@ -203,9 +203,23 @@ extern void (*Unlock_Task) (void);
 
   */
 
-/*--------------------------- PPC AIX/Darwin ----------------------------*/
+/*------------------- Darwin 8 (OSX 10.4) or newer ----------------------*/
+#if defined (__APPLE__) \
+    && defined (__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) \
+    && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1040
+#define USE_GCC_UNWINDER
+
+#if defined (__i386__) || defined (__x86_64__)
+#define PC_ADJUST -2
+#elif defined (__ppc__) || defined (__ppc64__)
+#define PC_ADJUST -4
+#else
+#error Unhandled darwin architecture.
+#endif
 
-#if ((defined (_POWER) && defined (_AIX)) || \
+/*------------------------ PPC AIX/Older Darwin -------------------------*/
+#elif ((defined (_POWER) && defined (_AIX)) || \
 (defined (__ppc__) && defined (__APPLE__)))
 
 #define USE_GENERIC_UNWINDER