X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fppc-darwin-os.h;h=6d23ee2166eedacb6bba9765e1da3c8e325686a3;hb=02d7495253b9075e4d86275590c3e827c814b596;hp=984e932986958de9b3a7d09969aca56ed87976af;hpb=19efdada13c0ca54d5b0249aeeece458f888896e;p=sbcl.git diff --git a/src/runtime/ppc-darwin-os.h b/src/runtime/ppc-darwin-os.h index 984e932..6d23ee2 100644 --- a/src/runtime/ppc-darwin-os.h +++ b/src/runtime/ppc-darwin-os.h @@ -7,6 +7,23 @@ static inline os_context_t *arch_os_get_context(void **void_context) { return (os_context_t *) *void_context; } +/* As of XCode 3.0, the field names for the thread state have changed + * and now are prepended with __. Use some #define hackery to deal + * with this. MAC_OS_X_VERSION_10_5 seems to be a good test to see if + * we need the new style field names. + */ +#if MAC_OS_X_VERSION_10_5 + +#define PPC_DARWIN_REGIFY(foo) __ ## foo + +typedef ppc_thread_state_t ppc_ss_struct_t; + +#else + +#define PPC_DARWIN_REGIFY(foo) foo + +typedef ppc_saved_state_t ppc_ss_struct_t; + +#endif /* MAC_OS_X_VERSION_10_5 */ -#define DARWIN_FIX_CONTEXT(c) (c->uc_mcontext->ss.xer)^=0x80; #endif /* _PPC_DARWIN_OS_H */