summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--boehm-gc/ChangeLog4
-rw-r--r--boehm-gc/os_dep.c11
2 files changed, 14 insertions, 1 deletions
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog
index e8a9aa10ee2..17a59b63055 100644
--- a/boehm-gc/ChangeLog
+++ b/boehm-gc/ChangeLog
@@ -1,3 +1,7 @@
+2007-01-17 Mike Stump <mrs@apple.com>
+
+ * os_dep.c: Fix i686-apple-darwin9 builds.
+
2007-01-16 Jack Howarth <howarth@bromo.med.uc.edu>
* aclocal.m4: Regenerate to use multi.m4.
diff --git a/boehm-gc/os_dep.c b/boehm-gc/os_dep.c
index 540dcba5321..30811055ab5 100644
--- a/boehm-gc/os_dep.c
+++ b/boehm-gc/os_dep.c
@@ -3405,6 +3405,15 @@ extern kern_return_t exception_raise_state_identity(
#define MAX_EXCEPTION_PORTS 16
+#if defined (HAS_PPC_THREAD_STATE___R0) || \
+ defined (HAS_PPC_THREAD_STATE64___R0) || \
+ defined (HAS_X86_THREAD_STATE32___EAX) || \
+ defined (HAS_X86_THREAD_STATE64___RAX)
+# define THREAD_FLD(x) __ ## x
+#else
+# define THREAD_FLD(x) x
+#endif
+
static struct {
mach_msg_type_number_t count;
exception_mask_t masks[MAX_EXCEPTION_PORTS];
@@ -3846,7 +3855,7 @@ catch_exception_raise(
#if defined(POWERPC)
addr = (char*) exc_state.dar;
#elif defined (I386) || defined (X86_64)
- addr = (char*) exc_state.faultvaddr;
+ addr = (char*) exc_state. THREAD_FLD(faultvaddr);
#else
# error FIXME for non POWERPC/I386
#endif