X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fppc-arch.c;h=a8df9622b5b6dd509b2eb80f918671f86f349a95;hb=0b96758f3645dff3e681d82cc97ddab1faae27ac;hp=9c20cc01983ab9ef4ddadaea20e4eb8a84e855a1;hpb=2378b4fe567a8fea78b1e4915b9497d8c18ca92f;p=sbcl.git diff --git a/src/runtime/ppc-arch.c b/src/runtime/ppc-arch.c index 9c20cc0..a8df962 100644 --- a/src/runtime/ppc-arch.c +++ b/src/runtime/ppc-arch.c @@ -1,7 +1,7 @@ #include -#include "arch.h" #include "sbcl.h" +#include "arch.h" #include "globals.h" #include "validate.h" #include "os.h" @@ -185,12 +185,24 @@ sigtrap_handler(int signal, siginfo_t *siginfo, os_context_t *context) interrupt_handle_now(signal, code, context); break; } +#ifdef LISP_FEATURE_DARWIN + sigreturn(context); +#endif + return; } if (((code >> 26) == 3) && (((code >> 21) & 31) == 24)) { interrupt_internal_error(signal, code, context, 0); +#ifdef LISP_FEATURE_DARWIN + sigreturn(context); +#endif + return; } interrupt_handle_now(signal, code, context); +#ifdef LISP_FEATURE_DARWIN + /* Work around G5 bug */ + sigreturn(context); +#endif }