c41f8a3eb19019473823caf7741d0e1754db37dc
[sbcl.git] / src / compiler / generic / parms.lisp
1 ;;;; This file contains some parameterizations of various VM
2 ;;;; attributes common to all architectures.
3
4 ;;;; This software is part of the SBCL system. See the README file for
5 ;;;; more information.
6 ;;;;
7 ;;;; This software is derived from the CMU CL system, which was
8 ;;;; written at Carnegie Mellon University and released into the
9 ;;;; public domain. The software is in the public domain and is
10 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
11 ;;;; files for more information.
12
13 (in-package "SB!VM")
14
15 (defparameter *c-callable-static-symbols*
16   '(sub-gc
17     sb!kernel::internal-error
18     sb!kernel::control-stack-exhausted-error
19     sb!kernel::heap-exhausted-error
20     sb!kernel::undefined-alien-variable-error
21     sb!kernel::undefined-alien-function-error
22     sb!kernel::memory-fault-error
23     sb!di::handle-breakpoint
24     sb!di::handle-single-step-trap
25     fdefinition-object
26     #!+sb-thread sb!thread::run-interruption
27     #!+win32 sb!kernel::handle-win32-exception))
28
29 (defparameter *common-static-symbols*
30   '(t
31
32     ;; filled in by the C code to propagate to Lisp
33     *posix-argv* *core-string*
34
35     ;; free pointers.  Note that these are FIXNUM word counts, not (as
36     ;; one might expect) byte counts or SAPs. The reason seems to be
37     ;; that by representing them this way, we can avoid consing
38     ;; bignums.  -- WHN 2000-10-02
39     *read-only-space-free-pointer*
40     *static-space-free-pointer*
41     *initial-dynamic-space-free-pointer*
42
43     ;; things needed for non-local-exit
44     *current-catch-block*
45     *current-unwind-protect-block*
46
47     ;; stack pointers
48     *binding-stack-start*
49     *control-stack-start*
50     *control-stack-end*
51
52     ;; interrupt handling
53     *free-interrupt-context-index*
54     sb!unix::*interrupts-enabled*
55     sb!unix::*interrupt-pending*
56     *gc-inhibit*
57     *gc-pending*
58     #!-sb-thread
59     *stepping*
60
61     ;; hash table weaknesses
62     :key
63     :value
64     :key-and-value
65     :key-or-value))