diff --git a/lisp/Darwin-os.h b/lisp/Darwin-os.h index 12b51935606f9617e3207873e31e679af0aac244..577062f2e8eb7b0abea22479fbf937e8f4a67640 100644 --- a/lisp/Darwin-os.h +++ b/lisp/Darwin-os.h @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/Darwin-os.h,v 1.3 2005/09/15 18:26:50 rtoy Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/Darwin-os.h,v 1.4 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -31,7 +31,6 @@ typedef int os_vm_prot_t; #define OS_VM_DEFAULT_PAGESIZE 4096 -#define POSIX_SIGS #define HANDLER_ARGS int signal, siginfo_t *code, os_context_t *context #define CODE(code) ((code) ? code->si_code : 0) #define HANDLER_GET_CONTEXT diff --git a/lisp/FreeBSD-os.h b/lisp/FreeBSD-os.h index ffa93bf4fc4ba1d5981623126d97e8ee87101a27..a45bfa31524b9a9af36964c658d8a2dd97213156 100644 --- a/lisp/FreeBSD-os.h +++ b/lisp/FreeBSD-os.h @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/FreeBSD-os.h,v 1.10 2006/11/07 11:24:12 cshapiro Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/FreeBSD-os.h,v 1.11 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -41,7 +41,6 @@ void os_save_context(void); /* I *think* this is when things became incompatible with old signals. */ #if __FreeBSD_version > 400010 -#define POSIX_SIGS /* If we used SA_SIGINFO in sigaction() the third argument to signal handlers would be a struct ucontext_t. (The manpage for sigaction(2) is wrong!) Sigcontext and ucontext_t are diff --git a/lisp/Linux-os.h b/lisp/Linux-os.h index de69cc214627b307c5bcefe29d7f8eb0b8335983..35c8d781fb4efb573f8410cab66bec14d9b3fbc2 100644 --- a/lisp/Linux-os.h +++ b/lisp/Linux-os.h @@ -1,4 +1,4 @@ -/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/Linux-os.h,v 1.19 2006/11/07 11:24:12 cshapiro Exp $ +/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/Linux-os.h,v 1.20 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -59,8 +59,6 @@ typedef struct sigcontext sigcontext; typedef struct sigcontext_struct sigcontext; #endif -#define POSIX_SIGS - /* Don't want the SIGINFO flag on linux as it causes the creation of real-time interrupt frames. */ @@ -83,13 +81,6 @@ typedef struct sigcontext_struct sigcontext; #include <fpu_control.h> #define setfpucw(cw) {fpu_control_t cw_tmp=cw;_FPU_SETCW(cw_tmp);} -#define sigvec sigaction -#define sv_mask sa_mask -#define sv_flags sa_flags -#define sv_handler sa_handler -#if (__GNU_LIBRARY__ < 6) -#define sv_onstack sa_mask /* ouch, this one really hurts */ -#endif #define uc_sigmask oldmask #if defined (__x86_64) #define sc_pc rip diff --git a/lisp/NetBSD-os.h b/lisp/NetBSD-os.h index ec1cddf1d57da0c676dbc42f485d3bcc506fe7db..92b96273c419051446bc6353371a2dce9056e8a7 100644 --- a/lisp/NetBSD-os.h +++ b/lisp/NetBSD-os.h @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/NetBSD-os.h,v 1.5 2006/11/07 11:24:12 cshapiro Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/NetBSD-os.h,v 1.6 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -29,7 +29,6 @@ typedef int os_vm_prot_t; #define OS_VM_DEFAULT_PAGESIZE 4096 -#define POSIX_SIGS #define HANDLER_ARGS int signal, siginfo_t *code, ucontext_t *context #define CODE(code) ((code) ? code->si_code : 0) #define os_context_t ucontext_t diff --git a/lisp/OpenBSD-os.h b/lisp/OpenBSD-os.h index 86683e7e977abb7df6aa90720027be34d363eba8..2257249d3ec8e599ea8be8d262d162bc6f124072 100644 --- a/lisp/OpenBSD-os.h +++ b/lisp/OpenBSD-os.h @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/OpenBSD-os.h,v 1.4 2006/11/07 11:24:12 cshapiro Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/OpenBSD-os.h,v 1.5 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -29,7 +29,6 @@ typedef int os_vm_prot_t; #define OS_VM_DEFAULT_PAGESIZE 4096 -#define POSIX_SIGS #define HANDLER_ARGS int signal, siginfo_t *code, struct sigcontext *context #define CODE(code) ((code) ? code->si_code : 0) diff --git a/lisp/alpha-arch.c b/lisp/alpha-arch.c index 01a45d886888eedb15c3f9f2515932dbd70d1ccc..d526a6dbe10b0811d3661e41811b40758fb29167 100644 --- a/lisp/alpha-arch.c +++ b/lisp/alpha-arch.c @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/alpha-arch.c,v 1.8 2005/09/15 18:26:50 rtoy Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/alpha-arch.c,v 1.9 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -117,11 +117,7 @@ arch_remove_breakpoint(void *pc, unsigned long orig_inst) static unsigned int *skipped_break_addr, displaced_after_inst, after_breakpoint; -#ifdef POSIX_SIGS static sigset_t orig_sigmask; -#else -static int orig_sigmask; -#endif unsigned int emulate_branch(struct sigcontext *scp, unsigned long orig_inst) @@ -219,7 +215,6 @@ arch_do_displaced_inst(struct sigcontext *scp, unsigned long orig_inst) unsigned int next_inst; int op = orig_inst >> 26;; -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) orig_sigmask = context->uc_sigmask; FILLBLOCKSET(&context->uc_sigmask); @@ -235,10 +230,6 @@ arch_do_displaced_inst(struct sigcontext *scp, unsigned long orig_inst) scp->uc_sigmask = temp.__val[0]; } #endif -#else - orig_sigmask = scp->sc_mask; - scp->sc_mask = BLOCKABLE; -#endif /* Figure out where the displaced inst is going */ if (op == 0x1a || op & 0xf == 0x30) /* branch...ugh */ @@ -313,14 +304,10 @@ sigtrap_handler(int signal, int code, struct sigcontext *scp) *(unsigned int *) scp->sc_pc = displaced_after_inst; os_flush_icache((os_vm_address_t) scp->sc_pc, sizeof(unsigned long)); -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) scp->sc_mask = orig_sigmask; #else scp->sc_mask = orig_sigmask.__val[0]; -#endif -#else - scp->sc_mask = orig_sigmask; #endif after_breakpoint = NULL; break; diff --git a/lisp/breakpoint.c b/lisp/breakpoint.c index 012c6652b35eaaacce1ba8aa51e551f44c405312..82c1d971aca878e027a6f5cc5809aa357dbfa6c8 100644 --- a/lisp/breakpoint.c +++ b/lisp/breakpoint.c @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/breakpoint.c,v 1.18 2005/09/15 18:26:51 rtoy Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/breakpoint.c,v 1.19 2007/01/01 11:53:02 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -185,11 +185,7 @@ handle_breakpoint(int signal, int subcode, os_context_t * scp) * use debugger breakpoints anywhere in here. */ -#if defined POSIX_SIGS sigprocmask(SIG_SETMASK, &scp->uc_sigmask, NULL); -#else - sigsetmask(scp->sc_mask); -#endif funcall3(SymbolFunction(HANDLE_BREAKPOINT), compute_offset(scp, code, 0), code, scp_sap); @@ -286,11 +282,7 @@ handle_function_end_breakpoint(int signal, int subcode, os_context_t * scp) * use debugger breakpoints anywhere in here. */ -#if defined POSIX_SIGS sigprocmask(SIG_SETMASK, &scp->uc_sigmask, NULL); -#else - sigsetmask(scp->sc_mask); -#endif funcall3(SymbolFunction(HANDLE_BREAKPOINT), compute_offset(scp, code, 1), code, scp_sap); diff --git a/lisp/gc.c b/lisp/gc.c index 23f4920a5f8fcbb8a17cece2f7ab8b8cf9eb2820..b4879cc759f623fd7bb127505718a86e77c63bd6 100644 --- a/lisp/gc.c +++ b/lisp/gc.c @@ -1,7 +1,7 @@ /* * Stop and Copy GC based on Cheney's algorithm. * - * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/gc.c,v 1.25 2006/07/14 13:18:48 rtoy Exp $ + * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/gc.c,v 1.26 2007/01/01 11:53:03 cshapiro Rel $ * * Written by Christopher Hoover. */ @@ -186,11 +186,7 @@ collect_garbage(void) unsigned long static_space_size; unsigned long control_stack_size, binding_stack_size; -#ifdef POSIX_SIGS sigset_t tmp, old; -#else - int oldmask; -#endif SAVE_CONTEXT(); @@ -201,13 +197,9 @@ collect_garbage(void) gettimeofday(&start_tv, (struct timezone *) 0); #endif -#ifdef POSIX_SIGS sigemptyset(&tmp); FILLBLOCKSET(&tmp); sigprocmask(SIG_BLOCK, &tmp, &old); -#else - oldmask = sigblock(BLOCKABLE); -#endif current_static_space_free_pointer = (lispobj *) SymbolValue(STATIC_SPACE_FREE_POINTER); @@ -321,11 +313,7 @@ collect_garbage(void) #endif zero_stack(); -#ifdef POSIX_SIGS sigprocmask(SIG_SETMASK, &old, 0); -#else - (void) sigsetmask(oldmask); -#endif #ifdef PRINTNOISE diff --git a/lisp/interrupt.c b/lisp/interrupt.c index 82342250864208e9c7acb8506c52db9ad712f341..4297b114220506e8d9b69f2586e700e6f4f495f4 100644 --- a/lisp/interrupt.c +++ b/lisp/interrupt.c @@ -1,4 +1,4 @@ -/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/interrupt.c,v 1.45 2006/11/08 22:12:52 rtoy Exp $ */ +/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/interrupt.c,v 1.46 2007/01/01 11:53:03 cshapiro Exp $ */ /* Interrupt handling magic. */ @@ -44,11 +44,7 @@ static int pending_code = 0; #define DEREFCODE(code) (code) #endif -#ifdef POSIX_SIGS static sigset_t pending_mask; -#else -static int pending_mask = 0; -#endif static boolean maybe_gc_pending = FALSE; @@ -142,15 +138,11 @@ void undo_fake_foreign_function_call(os_context_t * context) { /* Block all blockable signals */ -#ifdef POSIX_SIGS sigset_t block; sigemptyset(&block); FILLBLOCKSET(&block); sigprocmask(SIG_BLOCK, &block, 0); -#else - sigblock(BLOCKABLE); -#endif /* Going back into lisp. */ foreign_function_call_active = 0; @@ -180,7 +172,6 @@ interrupt_internal_error(HANDLER_ARGS, boolean continuable) if (internal_errors_enabled) context_sap = alloc_sap(context); -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) sigprocmask(SIG_SETMASK, &context->uc_sigmask, 0); #else @@ -192,9 +183,6 @@ interrupt_internal_error(HANDLER_ARGS, boolean continuable) sigprocmask(SIG_SETMASK, &temp, 0); } #endif -#else - sigsetmask(context->sc_mask); -#endif /* POSIX_SIGS */ if (internal_errors_enabled) funcall2(SymbolFunction(INTERNAL_ERROR), context_sap, @@ -225,17 +213,12 @@ interrupt_handle_pending(os_context_t * context) #endif undo_fake_foreign_function_call(context); } -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) context->uc_sigmask = pending_mask; #else context->uc_sigmask = pending_mask.__val[0]; #endif sigemptyset(&pending_mask); -#else - context->sc_mask = pending_mask; - pending_mask = 0; -#endif /* POSIX_SIGS */ if (pending_signal) { int signal; @@ -326,7 +309,6 @@ interrupt_handle_now(HANDLER_ARGS) lispobj context_sap = alloc_sap(context); /* Allow signals again. */ -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) sigprocmask(SIG_SETMASK, &context->uc_sigmask, 0); #else @@ -338,9 +320,6 @@ interrupt_handle_now(HANDLER_ARGS) sigprocmask(SIG_SETMASK, &temp, 0); } #endif -#else - sigsetmask(context->sc_mask); -#endif /* POSIX_SIGS */ #if 1 funcall3(handler.lisp, make_fixnum(signal), make_fixnum(CODE(code)), @@ -351,7 +330,6 @@ interrupt_handle_now(HANDLER_ARGS) #endif } else { /* Allow signals again. */ -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) sigprocmask(SIG_SETMASK, &context->uc_sigmask, 0); #else @@ -363,9 +341,6 @@ interrupt_handle_now(HANDLER_ARGS) sigprocmask(SIG_SETMASK, &temp, 0); } #endif -#else - sigsetmask(context->sc_mask); -#endif /* POSIX_SIGS */ #if ( defined( __linux__ ) && ( defined( i386 ) || defined ( __x86_64 ) ) ) (*handler.c) (signal, contextstruct); @@ -390,7 +365,6 @@ maybe_now_maybe_later(HANDLER_ARGS) /**/ if (SymbolValue(INTERRUPTS_ENABLED) == NIL) { pending_signal = signal; pending_code = DEREFCODE(code); -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) pending_mask = context->uc_sigmask; FILLBLOCKSET(&context->uc_sigmask); @@ -407,10 +381,6 @@ maybe_now_maybe_later(HANDLER_ARGS) } #endif -#else - pending_mask = context->sc_mask; - context->sc_mask |= BLOCKABLE; -#endif /* POSIX_SIGS */ SetSymbolValue(INTERRUPT_PENDING, T); } else if ( @@ -420,7 +390,6 @@ maybe_now_maybe_later(HANDLER_ARGS) arch_pseudo_atomic_atomic(context)) { pending_signal = signal; pending_code = DEREFCODE(code); -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) pending_mask = context->uc_sigmask; FILLBLOCKSET(&context->uc_sigmask); @@ -435,10 +404,6 @@ maybe_now_maybe_later(HANDLER_ARGS) context->uc_sigmask = temp.__val[0]; } #endif -#else - pending_mask = context->sc_mask; - context->sc_mask |= BLOCKABLE; -#endif /* POSIX_SIGS */ arch_set_pseudo_atomic_interrupted(context); } else { @@ -512,7 +477,6 @@ interrupt_maybe_gc(HANDLER_ARGS) if (arch_pseudo_atomic_atomic(context)) { maybe_gc_pending = TRUE; if (pending_signal == 0) { -#ifdef POSIX_SIGS #if !defined(__linux__) || (defined(__linux__) && (__GNU_LIBRARY__ < 6)) pending_mask = context->uc_sigmask; FILLBLOCKSET(&context->uc_sigmask); @@ -528,10 +492,6 @@ interrupt_maybe_gc(HANDLER_ARGS) context->uc_sigmask = temp.__val[0]; } #endif -#else - pending_mask = context->sc_mask; - context->sc_mask |= BLOCKABLE; -#endif /* POSIX_SIGS */ } arch_set_pseudo_atomic_interrupted(context); } else { @@ -558,7 +518,6 @@ static char altstack[SIGNAL_STACK_SIZE]; void interrupt_install_low_level_handler(int signal, void handler(HANDLER_ARGS)) { -#ifdef POSIX_SIGS struct sigaction sa; sa.sa_sigaction = handler; @@ -592,14 +551,6 @@ interrupt_install_low_level_handler(int signal, void handler(HANDLER_ARGS)) sigaction(signal, &sa, NULL); -#else /* not POSIX_SIGNALS */ - struct sigvec sv; - - sv.sv_handler = handler; - sv.sv_mask = BLOCKABLE; - sv.sv_flags = 0; - sigvec(signal, &sv, NULL); -#endif /* not POSIX_SIGNALS */ if (handler == (void (*)(HANDLER_ARGS)) SIG_DFL) interrupt_low_level_handlers[signal] = 0; @@ -609,7 +560,6 @@ interrupt_install_low_level_handler(int signal, void handler(HANDLER_ARGS)) unsigned long install_handler(int signal, void handler(HANDLER_ARGS)) -#ifdef POSIX_SIGS { struct sigaction sa; sigset_t old, new; @@ -645,36 +595,6 @@ install_handler(int signal, void handler(HANDLER_ARGS)) return (unsigned long) oldhandler.lisp; } -#else -{ - struct sigvec sv; - int oldmask; - union interrupt_handler oldhandler; - - oldmask = sigblock(sigmask(signal)); - - if (interrupt_low_level_handlers[signal] == 0) { - if (handler == (void (*)(HANDLER_ARGS)) SIG_DFL - || handler == (void (*)(HANDLER_ARGS)) SIG_IGN) - sv.sv_handler = handler; - else if (sigmask(signal) & BLOCKABLE) - sv.sv_handler = maybe_now_maybe_later; - else - sv.sv_handler = interrupt_handle_now_handler; - - sv.sv_mask = BLOCKABLE; - sv.sv_flags = 0; - sigvec(signal, &sv, NULL); - } - - oldhandler = interrupt_handlers[signal]; - interrupt_handlers[signal].c = handler; - - sigsetmask(oldmask); - - return (unsigned long) oldhandler.lisp; -} -#endif #ifdef FEATURE_HEAP_OVERFLOW_CHECK void diff --git a/lisp/interrupt.h b/lisp/interrupt.h index 32227719170653f2e24031841e714267150ecb84..ecd75653ad7d65bef172a319d9980f6d61b35119 100644 --- a/lisp/interrupt.h +++ b/lisp/interrupt.h @@ -1,4 +1,4 @@ -/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/interrupt.h,v 1.10 2005/09/15 18:26:51 rtoy Exp $ */ +/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/interrupt.h,v 1.11 2007/01/01 11:53:03 cshapiro Rel $ */ #ifndef _INTERRUPT_H_ #define _INTERRUPT_H_ @@ -42,7 +42,6 @@ extern union interrupt_handler interrupt_handlers[NSIG]; sigmask(SIGPROF) | sigmask(SIGWINCH) | \ sigmask(SIGUSR1) | sigmask(SIGUSR2)) #else -#ifdef POSIX_SIGS #define FILLBLOCKSET(s) (sigaddset(s,SIGHUP), sigaddset(s,SIGINT), \ sigaddset(s,SIGQUIT), sigaddset(s,SIGPIPE), \ sigaddset(s,SIGALRM), sigaddset(s,SIGURG), \ @@ -51,16 +50,6 @@ extern union interrupt_handler interrupt_handlers[NSIG]; sigaddset(s,SIGXFSZ), sigaddset(s,SIGVTALRM), \ sigaddset(s,SIGPROF), sigaddset(s,SIGWINCH), \ sigaddset(s,SIGUSR1), sigaddset(s,SIGUSR2)) -#else -#define BLOCKABLE (sigmask(SIGHUP) | sigmask(SIGINT) | \ - sigmask(SIGQUIT) | sigmask(SIGPIPE) | \ - sigmask(SIGALRM) | sigmask(SIGURG) | \ - sigmask(SIGTSTP) | sigmask(SIGCHLD) | \ - sigmask(SIGIO) | sigmask(SIGXCPU) | \ - sigmask(SIGXFSZ) | sigmask(SIGVTALRM) | \ - sigmask(SIGPROF) | sigmask(SIGWINCH) | \ - sigmask(SIGUSR1) | sigmask(SIGUSR2)) -#endif #endif #endif /* _INTERRUPT_H_ */ diff --git a/lisp/os.h b/lisp/os.h index 2453515e4b842faffa4cfa7821b3328f7ae20f57..7756e184e31bf8da314ef07bb9c00908c4da2c0d 100644 --- a/lisp/os.h +++ b/lisp/os.h @@ -1,5 +1,5 @@ /* - * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/os.h,v 1.16 2005/09/15 18:26:52 rtoy Exp $ + * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/os.h,v 1.17 2007/01/01 11:53:03 cshapiro Exp $ * * Common interface for os-dependent functions. * @@ -68,11 +68,9 @@ /* Some OSes have their reasons not to use SA_SIGINFO. */ -#ifdef POSIX_SIGS #if !defined(USE_SA_SIGINFO) #define USE_SA_SIGINFO SA_SIGINFO #endif -#endif #define OS_VM_PROT_ALL (OS_VM_PROT_READ|OS_VM_PROT_WRITE|OS_VM_PROT_EXECUTE) diff --git a/lisp/sparc-arch.c b/lisp/sparc-arch.c index af4c9bfdf3c38200817db2e302c969ff35d25338..15cc437b76effa9ceeadb23f4f1e5ccbe430506c 100644 --- a/lisp/sparc-arch.c +++ b/lisp/sparc-arch.c @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/sparc-arch.c,v 1.27 2005/09/15 18:26:52 rtoy Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/sparc-arch.c,v 1.28 2007/01/01 11:53:03 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -123,11 +123,7 @@ arch_remove_breakpoint(void *pc, unsigned long orig_inst) static unsigned int *skipped_break_addr, displaced_after_inst; -#ifdef POSIX_SIGS static sigset_t orig_sigmask; -#else -static int orig_sigmask; -#endif void arch_do_displaced_inst(struct sigcontext *scp, unsigned long orig_inst) @@ -135,14 +131,9 @@ arch_do_displaced_inst(struct sigcontext *scp, unsigned long orig_inst) unsigned int *pc = (unsigned int *) SC_PC(scp); unsigned int *npc = (unsigned int *) SC_NPC(scp); -#ifdef POSIX_SIGS orig_sigmask = scp->uc_sigmask; sigemptyset(&scp->uc_sigmask); FILLBLOCKSET(&scp->uc_sigmask); -#else - orig_sigmask = scp->sc_mask; - scp->sc_mask = BLOCKABLE; -#endif *pc = orig_inst; os_flush_icache((os_vm_address_t) pc, sizeof(unsigned int)); @@ -436,7 +427,6 @@ sigill_handler(HANDLER_ARGS) { SAVE_CONTEXT(); -#ifdef POSIX_SIGS /* * Do we really want to have the same signals as in the context? * This would typically enable all signals, I think. But there @@ -453,9 +443,6 @@ sigill_handler(HANDLER_ARGS) #if 0 sigprocmask(SIG_SETMASK, &context->uc_sigmask, 0); #endif -#else - sigsetmask(context->sc_mask); -#endif if (CODE(code) == ILLTRAP_INST) { int illtrap_code; @@ -499,11 +486,7 @@ sigill_handler(HANDLER_ARGS) *skipped_break_addr = trap_Breakpoint; skipped_break_addr = NULL; *(unsigned long *) SC_PC(context) = displaced_after_inst; -#ifdef POSIX_SIGS context->uc_sigmask = orig_sigmask; -#else - context->sc_mask = orig_sigmask; -#endif os_flush_icache((os_vm_address_t) SC_PC(context), sizeof(unsigned long)); diff --git a/lisp/sunos-os.c b/lisp/sunos-os.c index e7aaa2f035bb20c40878a220721e3f3e80b486d3..e7291a695aa430ab8a0f00774d3d9ca43b80c72d 100644 --- a/lisp/sunos-os.c +++ b/lisp/sunos-os.c @@ -1,5 +1,5 @@ /* - * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/sunos-os.c,v 1.7 2005/09/15 18:26:52 rtoy Exp $ + * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/sunos-os.c,v 1.8 2007/01/01 11:53:03 cshapiro Exp $ * * OS-dependent routines. This file (along with os.h) exports an * OS-independent interface to the operating system VM facilities. @@ -735,11 +735,7 @@ maybe_gc(HANDLER_ARGS) SAVE_CONTEXT(); -#ifdef POSIX_SIGS sigprocmask(SIG_SETMASK, &context->uc_sigmask, 0); -#else - sigsetmask(context->sc_mask); -#endif already_trying = TRUE; did_gc = interrupt_maybe_gc(signal, code, context); diff --git a/lisp/sunos-os.h b/lisp/sunos-os.h index f496442f9a0dcaa7b81f89fb0c49686351d064ef..0eddd0775e0eec353e029d77907d375c328df0ec 100644 --- a/lisp/sunos-os.h +++ b/lisp/sunos-os.h @@ -1,6 +1,6 @@ /* - $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/sunos-os.h,v 1.8 2005/09/15 18:26:52 rtoy Exp $ + $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/sunos-os.h,v 1.9 2007/01/01 11:53:03 cshapiro Exp $ This code was written as part of the CMU Common Lisp project at Carnegie Mellon University, and has been placed in the public domain. @@ -30,8 +30,6 @@ #include <ucontext.h> #define sigcontext ucontext -#define POSIX_SIGS - #endif /* SOLARIS */ typedef unsigned long os_vm_address_t;