X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fppc-darwin-os.h;h=119dcbdde449e0037dc6ddcdb9428544e8e6eb29;hb=eac461c1f1ca91cfe282c779291d582ed6b336cb;hp=a40699bd82d9e65f440a9e649f33702bf928e8eb;hpb=506253505641855dc8bb87033f7af894904f848b;p=sbcl.git diff --git a/src/runtime/ppc-darwin-os.h b/src/runtime/ppc-darwin-os.h index a40699b..119dcbd 100644 --- a/src/runtime/ppc-darwin-os.h +++ b/src/runtime/ppc-darwin-os.h @@ -1,9 +1,30 @@ #ifndef _PPC_DARWIN_OS_H #define _PPC_DARWIN_OS_H -static inline os_context_t *arch_os_get_context(void **void_context) { +#include "darwin-os.h" + +typedef unsigned int os_context_register_t; + +static inline os_context_t *arch_os_get_context(void **void_context) +{ return (os_context_t *) *void_context; } +/* On OS X 10.5, the field names for the thread state have changed and + * now are prepended with __. Use some #define hackery to deal with + * this. + */ +#if __DARWIN_UNIX03 + +#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 /* __DARWIN_UNIX03 */ #endif /* _PPC_DARWIN_OS_H */