source: trunk/source/level-0/l0-init.lisp

Last change on this file was 16685, checked in by rme, 4 years ago

Update copyright/license headers in files.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 7.1 KB
Line 
1;;;-*-Mode: LISP; Package: CCL -*-
2;;;
3;;; Copyright 1994-2009 Clozure Associates
4;;;
5;;; Licensed under the Apache License, Version 2.0 (the "License");
6;;; you may not use this file except in compliance with the License.
7;;; You may obtain a copy of the License at
8;;;
9;;;     http://www.apache.org/licenses/LICENSE-2.0
10;;;
11;;; Unless required by applicable law or agreed to in writing, software
12;;; distributed under the License is distributed on an "AS IS" BASIS,
13;;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14;;; See the License for the specific language governing permissions and
15;;; limitations under the License.
16
17(in-package "CCL")
18
19(defconstant array-total-size-limit
20  #.(expt 2 (- target::nbits-in-word target::num-subtag-bits))
21  "the exclusive upper bound on the total number of elements in an array")
22
23
24;Features for #+/- conditionalization:
25(defparameter *features*
26  '(:common-lisp
27    :openmcl
28    :ccl
29    :ccl-1.2
30    :ccl-1.3
31    :ccl-1.4
32    :ccl-1.5
33    :ccl-1.6
34    :ccl-1.7
35    :ccl-1.8
36    :ccl-1.9
37    :ccl-1.10
38    :ccl-1.11
39    :ccl-1.12
40    :clozure
41    :clozure-common-lisp
42    :ansi-cl
43    #-windows-target :unix
44    :openmcl-unicode-strings
45    :ipv6
46    ;; Threads and MOP stuff is pretty redundant.
47    :openmcl-native-threads
48    :openmcl-partial-mop
49    :mcl-common-mop-subset
50    :openmcl-mop-2
51    ;; Thread-private hash-tables were introduced in version 1.0
52    :openmcl-private-hash-tables
53    ;; Hash-consing support (special primitives for allocating
54    ;; and managing statically allocated CONS cells) will be
55    ;; added in 1.1
56    ;; Was dropped in 1.2
57    #+(and x86-target 64-bit-target)
58    :static-conses-should-work-with-egc-in-ccl 
59    ;; :openmcl-hash-consing
60    #+eabi-target :eabi-target
61    #+ppc-target :powerpc
62    #+ppc-target :ppc-target
63    #+ppc-target :ppc-clos              ; used in encapsulate
64    #+ppc32-target :ppc32-target
65    #+ppc32-target :ppc32-host
66    #+ppc64-target :ppc64-target
67    #+ppc64-target :ppc64-host
68    #+x8632-target :x8632-target
69    #+x8632-target :x8632-host
70    #+x8664-target :x86-64
71    #+x8664-target :x86_64
72    #+x8632-target :x86
73    #+x86-target :x86-target
74    #+x86-target :x86-host
75    #+x8664-target :x8664-target
76    #+x8664-target :x8664-host
77    #+arm-target :arm
78    #+arm-target :arm-target
79    #+linux-target :linux-host
80    #+linux-target :linux-target
81    #+linuxppc-target :linuxppc-target
82    #+linuxppc-target :linuxppc-host
83    #+linuxx86-target :linuxx86-target
84    #+linuxx8664-target :linuxx8664-target
85    #+linuxx8664-target :linuxx8664-host
86    #+linuxx8632-target :linuxx8632-target
87    #+linuxx8632-target :linuxx8632-host
88    #+linuxarm-target :linuxarm-target
89    #+linuxarm-target :linuxarm-host
90    #+darwinarm-target :darwinarm-target
91    #+darwinarm-target :darwinarm-host
92    #+darwinppc-target :darwinppc-target
93    #+darwinppc-target :darwinppc-host
94    #+darwinppc-target :darwin-target
95    #+freebsd-target :freebsd-host
96    #+freebsd-target :freebsd-target
97    #+freebsdx86-target :freebsdx86-target
98    #+freebsdx8664-target :freebsdx8664-target
99    #+freebsdx8664-target :freebsdx8664-host
100    #+freebsdx8632-target :freebsdx8632-target
101    #+freebsdx8632-target :freebsdx8632-host
102    #+darwin-target :darwin-host
103    #+darwin-target :darwin-target
104    #+darwinx86-target :darwinx86-target
105    #+darwinx8632-target :darwinx8632-target
106    #+darwinx8632-target :darwinx8632-host
107    #+darwinx8664-target :darwinx8664-target
108    #+darwinx8664-target :darwinx8664-host
109    #+windows-target :windows-host
110    #+windows-target :windows-target
111    #+win64-target :win64-target
112    #+win64-target :win64-host
113    #+win32-target :win32-target
114    #+win32-target :win32-host
115    #+solaris-target :solaris-host
116    #+solaris-target :solaris-target
117    #+solarisx86-target :solarisx86-target
118    #+solarisx8664-target :solarisx8664-target
119    #+solarisx8664-target :solarisx8664-host
120    #+solarisx8632-target :solarisx8632-target
121    #+solarisx8632-target :solarisx8632-host
122    #+android-target :android-host
123    #+android-target :android-target
124    #+androidarm-target :androidarm-target
125    #+androidarm-target :androidarm-host
126    #+(and ppc-target poweropen-target) :poweropen-target
127    #+64-bit-target :64-bit-target
128    #+64-bit-target :64-bit-host
129    #+32-bit-target :32-bit-target
130    #+32-bit-target :32-bit-host
131    #+darwin-target :darwin
132    #+linux-target :linux
133    #+freebsd-target :freebsd
134    #+solaris-target :solaris
135    #+windows-target :windows
136    #+android-target :android
137    #+little-endian-target :little-endian-target
138    #+little-endian-target :little-endian-host
139    #+big-endian-target :big-endian-target
140    #+big-endian-target :big-endian-host
141    )
142  "a list of symbols that describe features provided by the
143   implementation")
144
145(defparameter *optional-features* () "Set by build process")
146
147(defparameter *load-verbose* nil
148  "the default for the :VERBOSE argument to LOAD")
149
150;All Lisp package variables... Dunno if this still matters, but it
151;used to happen in the kernel...
152(dolist (x '(* ** *** *APPLYHOOK* *DEBUG-IO*
153             *DEFAULT-PATHNAME-DEFAULTS* *ERROR-OUTPUT* *EVALHOOK*
154             *FEATURES* *LOAD-VERBOSE* *MACROEXPAND-HOOK* *MODULES*
155             *PACKAGE* *PRINT-ARRAY* *PRINT-BASE* *PRINT-CASE* *PRINT-CIRCLE*
156             *PRINT-ESCAPE* *PRINT-GENSYM* *PRINT-LENGTH* *PRINT-LEVEL*
157             *PRINT-PRETTY* *PRINT-RADIX* *QUERY-IO* *RANDOM-STATE* *READ-BASE*
158             *READ-DEFAULT-FLOAT-FORMAT* *READ-SUPPRESS* *READTABLE*
159             *STANDARD-INPUT* *STANDARD-OUTPUT* *TERMINAL-IO* *TRACE-OUTPUT*
160             + ++ +++ - / // /// ARRAY-DIMENSION-LIMIT ARRAY-RANK-LIMIT
161             ARRAY-TOTAL-SIZE-LIMIT BOOLE-1 BOOLE-2 BOOLE-AND BOOLE-ANDC1
162             BOOLE-ANDC2 BOOLE-C1 BOOLE-C2 BOOLE-CLR BOOLE-EQV BOOLE-IOR
163             BOOLE-NAND BOOLE-NOR BOOLE-ORC1 BOOLE-ORC2 BOOLE-SET BOOLE-XOR
164             CALL-ARGUMENTS-LIMIT CHAR-CODE-LIMIT
165             DOUBLE-FLOAT-EPSILON DOUBLE-FLOAT-NEGATIVE-EPSILON
166             INTERNAL-TIME-UNITS-PER-SECOND LAMBDA-LIST-KEYWORDS
167             LAMBDA-PARAMETERS-LIMIT LEAST-NEGATIVE-DOUBLE-FLOAT
168             LEAST-NEGATIVE-LONG-FLOAT LEAST-NEGATIVE-SHORT-FLOAT
169             LEAST-NEGATIVE-SINGLE-FLOAT LEAST-POSITIVE-DOUBLE-FLOAT
170             LEAST-POSITIVE-LONG-FLOAT LEAST-POSITIVE-SHORT-FLOAT
171             LEAST-POSITIVE-SINGLE-FLOAT LONG-FLOAT-EPSILON
172             LONG-FLOAT-NEGATIVE-EPSILON MOST-NEGATIVE-DOUBLE-FLOAT
173             MOST-NEGATIVE-FIXNUM MOST-NEGATIVE-LONG-FLOAT
174             MOST-NEGATIVE-SHORT-FLOAT MOST-NEGATIVE-SINGLE-FLOAT
175             MOST-POSITIVE-DOUBLE-FLOAT MOST-POSITIVE-FIXNUM
176             MOST-POSITIVE-LONG-FLOAT MOST-POSITIVE-SHORT-FLOAT
177             MOST-POSITIVE-SINGLE-FLOAT MULTIPLE-VALUES-LIMIT PI
178             SHORT-FLOAT-EPSILON SHORT-FLOAT-NEGATIVE-EPSILON
179             SINGLE-FLOAT-EPSILON SINGLE-FLOAT-NEGATIVE-EPSILON))
180  (%symbol-bits x (%ilogior2 (%symbol-bits x) (ash 1 $sym_bit_special))))
181
182(defparameter *loading-file-source-file* nil)
183(defparameter *loading-toplevel-location* nil)
184
185(defvar *nx-speed* 1)
186(defvar *nx-space* 1)
187(defvar *nx-safety* 1)
188(defvar *nx-cspeed* 1)
189(defvar *nx-debug* 1)
190
191(defparameter *case-sensitive-filesystem* t)
192
193;;; end
Note: See TracBrowser for help on using the repository browser.