-
Notifications
You must be signed in to change notification settings - Fork 0
/
compiler-namespace.scm
299 lines (297 loc) · 7.03 KB
/
compiler-namespace.scm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
;;;; compiler-namespace.scm - private namespace declarations for compiler units
;
; Copyright (c) 2009-2011, The Chicken Team
; All rights reserved.
;
; Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following
; conditions are met:
;
; Redistributions of source code must retain the above copyright notice, this list of conditions and the following
; disclaimer.
; Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following
; disclaimer in the documentation and/or other materials provided with the distribution.
; Neither the name of the author nor the names of its contributors may be used to endorse or promote
; products derived from this software without specific prior written permission.
;
; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
; AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
; CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
; SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
; THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
; OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
; POSSIBILITY OF SUCH DAMAGE.
(private
compiler
analyze-expression
all-import-libraries
banner
basic-literal?
big-fixnum?
block-compilation
block-variable-literal-name
block-variable-literal?
bootstrap-mode
bomb
broken-constant-nodes
build-expression-tree
build-lambda-list
build-node-graph
c-ify-string
callback-names
canonicalize-begin-body
canonicalize-expression
check-and-open-input-file
check-signature
chop-extension
chop-separator
cleanup
close-checked-input-file
collapsable-literal?
collect!
compile-format-string
compiler-arguments
compiler-cleanup-hook
compiler-source-file
compiler-syntax-enabled
compiler-syntax-statistics
compute-database-statistics
constant-form-eval
constant-table
constant?
constants-used
copy-node!
copy-node-tree-and-rename
count!
create-foreign-stub
csc-control-file
current-program-size
data-declarations
debug-info-index
debug-info-vector-name
debug-lambda-list
debug-variable-list
debugging
debugging-chicken
debugging-executable
decompose-lambda-list
default-debugging-declarations
default-declarations
default-default-target-heap-size
default-default-target-stack-size
default-extended-bindings
default-optimization-iterations
default-optimization-passes
default-optimization-passes-when-trying-harder
default-output-filename
default-profiling-declarations
default-standard-bindings
defconstant-bindings
dependency-list
direct-call-ids
disable-stack-overflow-checking
disabled-warnings
display-analysis-database
display-line-number-database
display-real-name-table
do-scrutinize
dump-defined-globals
dump-global-refs
dump-nodes
dump-undefined-globals
emit-closure-info
emit-control-file-item
emit-global-inline-file
emit-profile
emit-syntax-trace-info
emit-trace-info
enable-inline-files
encode-literal
eq-inline-operator
error-is-extended-binding
estimate-foreign-result-location-size
estimate-foreign-result-size
expand-debug-assignment
expand-debug-call
expand-debug-lambda
expand-foreign-callback-lambda
expand-foreign-callback-lambda*
expand-foreign-lambda
expand-foreign-lambda*
expand-foreign-primitive
expand-profile-lambda
explicit-use-flag
export-dump-hook
export-variable
expression-has-side-effects?
external-protos-first
external-to-pointer
external-variables
file-io-only
file-requirements
final-foreign-type
find-early-refs
find-inlining-candidates
find-lambda-container
finish-foreign-result
first-analysis
fold-boolean
fold-inner
foldable-bindings
follow-without-loop
foreign-argument-conversion
foreign-declarations
foreign-lambda-stubs
foreign-result-conversion
foreign-string-result-reserve
foreign-type-check
foreign-type-convert-argument
foreign-type-convert-result
foreign-type-declaration
foreign-type-table
foreign-variables
gen
gen-list
generate-code
generate-external-variables
generate-foreign-callback-header
generate-foreign-callback-stub-prototypes
generate-foreign-stubs
get
get-all
get-line
get-line-2
get-list
hide-variable
immediate?
immutable-constants
import-libraries
read-info-hook
initialize-analysis-database
initialize-compiler
inline-lambda-bindings
inline-locally
inline-max-size
inline-output-file
inline-substitutions-enabled
inline-table
inline-table-used
inlining
insert-timer-checks
installation-home
internal-bindings
intrinsic?
line-number-database-2
line-number-database-size
llist-length
llist-match?
load-identifier-database
load-inline-file
load-type-database
local-definitions
location-pointer-map
make-argument-list
make-block-variable-literal
make-random-name
make-variable-list
mark-variable
match-node
membership-test-operators
membership-unfold-limit
no-argc-checks
no-bound-checks
no-global-procedure-checks
enable-module-registration
no-procedure-checks
node->sexpr
non-foldable-bindings
nonwinding-call/cc
optimization-iterations
original-program-size
output
parameter-limit
pending-canonicalizations
perform-closure-conversion
perform-cps-conversion
perform-high-level-optimizations
perform-inlining!
perform-pre-optimization!
perform-unboxing!
posq
postponed-initforms
pprint-expressions-to-file
prepare-for-code-generation
print-program-statistics
print-usage
print-version
process-command-line
process-declaration
profile-info-vector-name
profile-lambda-index
profile-lambda-list
profiled-procedures
put!
qnode
r-c-s
read/source-info
real-name
real-name-table
real-name2
register-unboxed-op
reorganize-recursive-bindings
require-imports-flag
rest-parameters-promoted-to-vector
rewrite
safe-globals-flag
scan-free-variables
scan-sharp-greater-string
scan-toplevel-assignments
scan-used-variables
scrutinize
set-real-name!
sexpr->node
simple-lambda-node?
simplifications
simplified-ops
simplify-named-call
sort-symbols
source-filename
source-info->string
source-info->line
standalone-executable
string->c-identifier
string->expr
stringify
substitution-table
symbolify
target-heap-growth
target-heap-shrinkage
target-heap-size
target-include-file
target-initial-heap-size
target-stack-size
toplevel-lambda-id
toplevel-scope
transform-direct-lambdas!
tree-copy
unchecked-specialized-arithmetic
undefine-shadowed-macros
unique-id
unit-name
units-used-by-default
unlikely-variables
update-line-number-database
update-line-number-database!
used-units
valid-c-identifier?
valid-compiler-options
valid-compiler-options-with-argument
variable-mark
variable-visible?
varnode
verbose-mode
words
words->bytes
words-per-flonum
zap-strings-flag)