X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fx86-arch.c;h=b9b5250db7e4f73ddbcc015aa271ad25c5a0b01e;hb=c0578d9893429c9c0da80ea5920360e4621fddab;hp=6babc962bf58db07573f3fc4a264a60fef6f571a;hpb=842d3c24e4a1a6b5ebadb9ee754814174a951029;p=sbcl.git diff --git a/src/runtime/x86-arch.c b/src/runtime/x86-arch.c index 6babc96..b9b5250 100644 --- a/src/runtime/x86-arch.c +++ b/src/runtime/x86-arch.c @@ -259,9 +259,8 @@ arch_handle_single_step_trap(os_context_t *context, int trap) #ifndef LISP_FEATURE_WIN32 void -sigtrap_handler(int signal, siginfo_t *info, void *void_context) +sigtrap_handler(int signal, siginfo_t *info, os_context_t *context) { - os_context_t *context = (os_context_t*)void_context; unsigned int trap; if (single_stepping && (signal==SIGTRAP)) { @@ -294,16 +293,14 @@ sigtrap_handler(int signal, siginfo_t *info, void *void_context) } void -sigill_handler(int signal, siginfo_t *siginfo, void *void_context) { - os_context_t *context = (os_context_t*)void_context; - +sigill_handler(int signal, siginfo_t *siginfo, os_context_t *context) { /* Triggering SIGTRAP using int3 is unreliable on OS X/x86, so * we need to use illegal instructions for traps. */ #if defined(LISP_FEATURE_DARWIN) && !defined(LISP_FEATURE_MACH_EXCEPTION_HANDLER) if (*((unsigned short *)*os_context_pc_addr(context)) == 0x0b0f) { *os_context_pc_addr(context) += 2; - return sigtrap_handler(signal, siginfo, void_context); + return sigtrap_handler(signal, siginfo, context); } #endif fake_foreign_function_call(context);