/[cmucl]/src/lisp/interrupt.h
ViewVC logotype

Contents of /src/lisp/interrupt.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.11 - (hide annotations)
Mon Jan 1 11:53:03 2007 UTC (7 years, 3 months ago) by cshapiro
Branch: MAIN
CVS Tags: sparc-tramp-assem-base, post-merge-intl-branch, merged-unicode-utf16-extfmt-2009-06-11, unicode-utf16-extfmt-2009-03-27, snapshot-2007-09, snapshot-2007-08, snapshot-2008-08, snapshot-2008-09, sse2-packed-2008-11-12, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2007-05, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, intl-branch-working-2010-02-19-1000, unicode-string-buffer-impl-base, sse2-base, release-20b-pre1, release-20b-pre2, unicode-string-buffer-base, sse2-packed-base, sparc-tramp-assem-2010-07-19, amd64-dd-start, release-19f-pre1, snapshot-2008-12, snapshot-2008-11, intl-2-branch-base, snapshot-2007-01, snapshot-2007-02, release-19e, GIT-CONVERSION, unicode-utf16-sync-2008-12, cross-sol-x86-merged, label-2009-03-16, release-19f-base, merge-sse2-packed, merge-with-19f, intl-branch-working-2010-02-11-1000, unicode-snapshot-2009-05, unicode-snapshot-2009-06, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-extfmts-sync-2008-12, RELEASE_20b, snapshot-2008-04, unicode-utf16-sync-label-2009-03-16, RELEASE_19f, snapshot-2007-03, release-20a-base, cross-sol-x86-base, unicode-utf16-char-support-2009-03-26, unicode-utf16-char-support-2009-03-25, unicode-utf16-extfmts-pre-sync-2008-11, snapshot-2008-10, snapshot-2007-04, snapshot-2010-12, snapshot-2010-11, unicode-utf16-sync-2008-11, snapshot-2007-07, snapshot-2011-09, snapshot-2011-06, snapshot-2011-07, snapshot-2011-04, snapshot-2007-06, snapshot-2011-02, snapshot-2011-03, snapshot-2011-01, pre-merge-intl-branch, release-19e-pre1, release-19e-pre2, snapshot-2010-05, snapshot-2010-04, snapshot-2010-07, snapshot-2010-06, snapshot-2010-01, snapshot-2010-03, snapshot-2010-02, snapshot-2010-08, label-2009-03-25, cross-sol-x86-2010-12-20, sse2-checkpoint-2008-10-01, intl-branch-2010-03-18-1300, sse2-merge-with-2008-11, sse2-merge-with-2008-10, RELEASE_20a, release-20a-pre1, snapshot-2009-11, snapshot-2009-12, unicode-utf16-extfmt-2009-06-11, portable-clx-import-2009-06-16, unicode-utf16-string-support, cross-sparc-branch-base, release-19e-base, intl-branch-base, unicode-utf16-base, portable-clx-base, snapshot-2009-08, snapshot-2007-12, snapshot-2007-10, snapshot-2007-11, snapshot-2009-02, snapshot-2009-01, snapshot-2009-07, snapshot-2009-05, snapshot-2009-04, pre-telent-clx, HEAD
Branch point for: RELEASE-19F-BRANCH, portable-clx-branch, cross-sparc-branch, RELEASE-20B-BRANCH, unicode-string-buffer-branch, sparc-tramp-assem-branch, sse2-packed-branch, RELEASE-20A-BRANCH, amd64-dd-branch, unicode-string-buffer-impl-branch, intl-branch, unicode-utf16-branch, cross-sol-x86-branch, release-19e-branch, sse2-branch, intl-2-branch, unicode-utf16-extfmt-branch
Changes since 1.10: +1 -12 lines
File MIME type: text/plain
Remove old-style signals code and make our POSIX_SIGS behavior the default.
1 cshapiro 1.11 /* $Header: /tiger/var/lib/cvsroots/cmucl/src/lisp/interrupt.h,v 1.11 2007/01/01 11:53:03 cshapiro Rel $ */
2 wlott 1.1
3 fgilham 1.9 #ifndef _INTERRUPT_H_
4     #define _INTERRUPT_H_
5 wlott 1.1
6     #include <signal.h>
7    
8     #define MAX_INTERRUPTS (4096)
9    
10 rtoy 1.7 extern os_context_t *lisp_interrupt_contexts[MAX_INTERRUPTS];
11 wlott 1.1
12     union interrupt_handler {
13 rtoy 1.10 lispobj lisp;
14     void (*c) (HANDLER_ARGS);
15 wlott 1.1 };
16    
17     extern void interrupt_init(void);
18 rtoy 1.10 extern void fake_foreign_function_call(os_context_t * context);
19     extern void undo_fake_foreign_function_call(os_context_t * context);
20 ram 1.4 extern void interrupt_handle_now(HANDLER_ARGS);
21 rtoy 1.10 extern void interrupt_handle_pending(os_context_t * scp);
22 ram 1.4 extern void interrupt_internal_error(HANDLER_ARGS, boolean continuable);
23     extern boolean interrupt_maybe_gc(HANDLER_ARGS);
24 wlott 1.1 extern void interrupt_install_low_level_handler
25 rtoy 1.8
26 rtoy 1.10 (int signal, void handler(HANDLER_ARGS));
27     extern unsigned long install_handler(int signal, void handler(HANDLER_ARGS));
28    
29     extern void build_fake_control_stack_frame(os_context_t * context);
30     extern void interrupt_handle_space_overflow(lispobj error,
31    
32     os_context_t * context);
33 wlott 1.1
34     extern union interrupt_handler interrupt_handlers[NSIG];
35    
36 hallgren 1.3 #ifdef hpux
37 wlott 1.1 #define BLOCKABLE (sigmask(SIGHUP) | sigmask(SIGINT) | \
38     sigmask(SIGQUIT) | sigmask(SIGPIPE) | \
39     sigmask(SIGALRM) | sigmask(SIGURG) | \
40     sigmask(SIGTSTP) | sigmask(SIGCHLD) | \
41 hallgren 1.3 sigmask(SIGIO) | sigmask(SIGVTALRM) | \
42     sigmask(SIGPROF) | sigmask(SIGWINCH) | \
43     sigmask(SIGUSR1) | sigmask(SIGUSR2))
44     #else
45 ram 1.4 #define FILLBLOCKSET(s) (sigaddset(s,SIGHUP), sigaddset(s,SIGINT), \
46     sigaddset(s,SIGQUIT), sigaddset(s,SIGPIPE), \
47     sigaddset(s,SIGALRM), sigaddset(s,SIGURG), \
48     sigaddset(s,SIGTSTP), sigaddset(s,SIGCHLD), \
49     sigaddset(s,SIGIO), sigaddset(s,SIGXCPU), \
50     sigaddset(s,SIGXFSZ), sigaddset(s,SIGVTALRM), \
51     sigaddset(s,SIGPROF), sigaddset(s,SIGWINCH), \
52     sigaddset(s,SIGUSR1), sigaddset(s,SIGUSR2))
53 hallgren 1.3 #endif
54 fgilham 1.9
55     #endif /* _INTERRUPT_H_ */

  ViewVC Help
Powered by ViewVC 1.1.5