1
2 /* $destdir\u56.c Machine generated C code */
3
4 /* Signature: 00000000 28-Sep-2011 */
5
6 #include <stdio.h>
7 #include <stdlib.h>
8 #include <string.h>
9 #include <ctype.h>
10 #include <stdarg.h>
11 #include <time.h>
12 #ifndef _cplusplus
13 #include <setjmp.h>
14 #endif
15
16 #include "config.h"
17
18 #ifndef header_machine_h
19 #define header_machine_h 1
20 #if !defined UNDER_CE && !defined EMBEDDED
21 #if ((defined HAVE_SOCKET && defined HAVE_SYS_SOCKET_H) || defined WIN32)
22 #define SOCKETS 1
23 #endif
24 #endif
25 #ifndef MS_CDECL
26 #ifdef _MSC_VER
27 # define MS_CDECL __cdecl
28 #else
29 # define MS_CDECL
30 #endif
31 #endif
32 #ifdef WIN32
33 # if defined WIN64 || defined __WIN64__
34 # define OPSYS "win64"
35 # define IMPNAME "win64"
36 # else
37 # define OPSYS "win32"
38 # define IMPNAME "win32"
39 # endif
40 #else
41 # ifdef HOST_OS
42 # define OPSYS HOST_OS
43 # ifdef HOST_CPU
44 # define IMPNAME HOST_OS ":" HOST_CPU
45 # else
46 # define IMPNAME HOST_OS
47 # endif
48 # else
49 # define OPSYS "Unknown"
50 # define IMPNAME "Generic"
51 # endif
52 #endif
53 #ifdef HAVE_STDINT_H
54 #include <stdint.h>
55 #else
56 #ifndef HAVE_UINT32_T
57 #ifdef HAVE_U_INT32_T
58 typedef u_int32_t uint32_t;
59 #define HAVE_UINT32_T 1
60 #endif
61 #endif
62 #ifndef HAVE_UINT64_T
63 #ifdef HAVE_U_INT64_T
64 typedef u_int64_t uint64_t;
65 #define HAVE_UINT64_T 1
66 #endif
67 #endif
68 #ifndef HAVE_UINTPTR_T
69 #ifdef HAVE_U_INTPTR_T
70 typedef u_intptr_t uintptr_t;
71 #define HAVE_UINTPTR_T 1
72 #endif
73 #endif
74 #if !defined HAVE_INT32_T && defined SIZEOF_INT && (SIZEOF_INT == 4)
75 typedef int int32_t;
76 #define HAVE_INT32_T 1
77 #endif
78 #if !defined HAVE_UINT32_T && defined SIZEOF_INT && (SIZEOF_INT == 4)
79 typedef unsigned int uint32_t;
80 #define HAVE_UINT32_T 1
81 #endif
82 #if !defined HAVE_INT32_T && defined SIZEOF_SHORT_INT && (SIZEOF_SHORT_INT == 4)
83 typedef short int int32_t;
84 #define HAVE_INT32_T 1
85 #endif
86 #if !defined HAVE_UINT32_T && defined SIZEOF_SHORT_INT && (SIZEOF_SHORT_INT == 4)
87 typedef unsigned short int uint32_t;
88 #define HAVE_UINT32_T 1
89 #endif
90 #if !defined HAVE_INT64_T && defined SIZEOF_LONG && (SIZEOF_LONG == 8)
91 typedef long int64_t;
92 #define HAVE_INT64_T 1
93 #endif
94 #if !defined HAVE_UINT64_T && defined SIZEOF_LONG && (SIZEOF_LONG == 8)
95 typedef unsigned long uint64_t;
96 #define HAVE_UINT64_T 1
97 #endif
98 #if !defined HAVE_INT64_T && defined SIZEOF_LONG_LONG && (SIZEOF_LONG_LONG == 8)
99 typedef long long int64_t;
100 #define HAVE_INT64_T 1
101 #endif
102 #if !defined HAVE_UINT64_T && defined SIZEOF_LONG_LONG && (SIZEOF_LONG_LONG == 8)
103 typedef unsigned long long uint64_t;
104 #define HAVE_UINT64_T 1
105 #endif
106 #if !defined HAVE_INTPTR_T && defined SIZEOF_VOID_P && (SIZEOF_VOID_P == 4) && defined HAVE_INT32_T
107 typedef int32_t intptr_t;
108 #define HAVE_INTPTR_T 1
109 #endif
110 #if !defined HAVE_INTPTR_T && defined SIZEOF_VOID_P && (SIZEOF_VOID_P == 8) && defined HAVE_INT64_T
111 typedef int64_t intptr_t;
112 #define HAVE_INTPTR_T 1
113 #endif
114 #if !defined HAVE_UINTPTR_T && defined SIZEOF_VOID_P && (SIZEOF_VOID_P == 4) && defined HAVE_UINT32_T
115 typedef uint32_t uintptr_t;
116 #define HAVE_UINTPTR_T 1
117 #endif
118 #if !defined HAVE_UINTPTR_T && defined SIZEOF_VOID_P && (SIZEOF_VOID_P == 8) && defined HAVE_UINT64_T
119 typedef uint64_t uintptr_t;
120 #define HAVE_UINTPTR_T 1
121 #endif
122 #endif
123 #endif
124 #ifndef header_tags_h
125 #define header_tags_h 1
126 #if !defined HAVE_STDINT_H || !defined HAVE_INT32_T
127 #error This system needs a 32-bit integer type.
128 #endif
129 #define SIXTY_FOUR_BIT (sizeof(intptr_t) == 8)
130 typedef int CSLbool;
131 #define YES 1
132 #define NO 0
133 #ifndef PAGE_BITS
134 # define PAGE_BITS 22
135 #endif
136 #define PAGE_POWER_OF_TWO (((uint32_t)1) << PAGE_BITS)
137 #define CSL_PAGE_SIZE (PAGE_POWER_OF_TWO - 256U)
138 #ifndef MAX_HEAPSIZE
139 # define MAX_HEAPSIZE (SIXTY_FOUR_BIT ? (512*1024) : 2048)
140 #endif
141 #ifndef MAX_BPSSIZE
142 # define MAX_BPSSIZE 64
143 #endif
144 #define MEGABYTE ((uint32_t)0x100000U)
145 #if PAGE_BITS >= 20
146 #define MAX_PAGES (MAX_HEAPSIZE >> (PAGE_BITS-20))
147 #define MAX_BPS_PAGES (MAX_BPSSIZE >> (PAGE_BITS-20))
148 #else
149 #define MAX_PAGES (MAX_HEAPSIZE << (20-PAGE_BITS))
150 #define MAX_BPS_PAGES (MAX_BPSSIZE << (20-PAGE_BITS))
151 #endif
152 #define MAX_NATIVE_PAGES MAX_BPS_PAGES
153 #define CSL_IGNORE(x) (x = x)
154 #define LONGEST_LEGAL_FILENAME 1024
155 #define FP_WORD_ORDER 0x01
156 #define FP_BYTE_ORDER 0x02
157 #define FP_MASK 0xff
158 typedef intptr_t Lisp_Object;
159 #define CELL sizeof(Lisp_Object)
160 #define TAG_BITS 7
161 #define TAG_CONS 0
162
163 #define TAG_FIXNUM 1
164 #define TAG_ODDS 2
165 #ifdef COMMON
166 #define TAG_SFLOAT 3
167 #endif
168 #define TAG_SYMBOL 4
169 #define TAG_NUMBERS 5
170 #define TAG_VECTOR 6
171 #define TAG_BOXFLOAT 7
172 #define fixnum_of_int(x) ((Lisp_Object)(TAG_FIXNUM + (((int32_t)(x)) << 4)))
173 #ifdef SIGNED_SHIFTS_ARE_LOGICAL
174 #define int_of_fixnum(x) ((int32_t)(((int32_t)(x)) < 0 ? \
175 (((int32_t)(x))>>4) | (-0x10000000) : \
176 (((int32_t)(x))>>4)))
177 #else
178 #define int_of_fixnum(x) ((int32_t)(((int32_t)(x)) >> 4))
179 #endif
180 #define GC_BIT_I 8
181 #define GC_BIT_H 8
182 #define GC_BIT_P ((intptr_t)~((~(uintptr_t)0) >> 1))
183 #define is_marked_i(w) (((int)(w) & GC_BIT_I) != 0)
184 extern Lisp_Object address_sign;
185 #define is_marked_p(w) (((Lisp_Object)(w) - address_sign) < 0)
186 #define clear_mark_bit_p(w) (((Lisp_Object)(w) & ~GC_BIT_P) + \
187 address_sign)
188 #define flip_mark_bit_i(w) ((Lisp_Object)(w) ^ GC_BIT_I)
189 #define flip_mark_bit_h(w) ((Header)(w) ^ GC_BIT_H)
190 #define flip_mark_bit_p(w) ((Lisp_Object)(w) ^ GC_BIT_P)
191 #define is_marked_h(w) (((int)(w) & GC_BIT_H) != 0)
192 #define exception_pending() (((int)nil & 1) != 0)
193 #define flip_exception() (nil = C_nil = (nil ^ 1))
194 #define ignore_exception() \
195 do { nil = C_nil; if (exception_pending()) flip_exception(); } while (0)
196 #define set_mark_bit_h(h) ((Header)(h) | GC_BIT_H)
197 #define clear_mark_bit_h(h) ((Header)(h) & ~GC_BIT_H)
198 #define set_mark_bit_i(h) ((Lisp_Object)(h) | GC_BIT_I)
199 #define clear_mark_bit_i(h) ((Lisp_Object)(h) & ~GC_BIT_I)
200 #define is_cons(p) ((((int)(p)) & TAG_BITS) == TAG_CONS)
201 #define is_fixnum(p) ((((int)(p)) & TAG_BITS) == TAG_FIXNUM)
202 #define is_odds(p) ((((int)(p)) & TAG_BITS) == TAG_ODDS)
203 #ifdef COMMON
204 #define is_sfloat(p) ((((int)(p)) & TAG_BITS) == TAG_SFLOAT)
205 #endif
206 #define is_symbol(p) ((((int)(p)) & TAG_BITS) == TAG_SYMBOL)
207 #define is_numbers(p)((((int)(p)) & TAG_BITS) == TAG_NUMBERS)
208 #define is_vector(p) ((((int)(p)) & TAG_BITS) == TAG_VECTOR)
209 #define is_bfloat(p) ((((int)(p)) & TAG_BITS) == TAG_BOXFLOAT)
210 #ifdef COMMON
211 #define consp(p) (is_cons(p) && (p) != nil)
212 #define symbolp(p) (is_symbol(p) || (p) == nil)
213 #else
214 #define consp(p) is_cons(p)
215 #define symbolp(p) is_symbol(p)
216 #endif
217 #define car_legal(p) is_cons(p)
218 #define is_number(p) ((((int)(p)) & 1) != 0)
219 #define is_float(p) ((((int)(p)) & 3) == 3)
220 #define is_immed_or_cons(p) ((((int)(p)) & 4) == 0)
221 typedef struct Cons_Cell
222 {
223 Lisp_Object car;
224 Lisp_Object cdr;
225 } Cons_Cell;
226 #ifdef MEMORY_TRACE
227 extern Cons_Cell *memory_reference(intptr_t p);
228 extern char *cmemory_reference(intptr_t p);
229 extern void identify_page_types();
230 extern long int car_counter;
231 extern unsigned long int car_low, car_high;
232 #define qcar(p) (memory_reference((intptr_t)p)->car)
233 #define qcdr(p) (memory_reference((intptr_t)p)->cdr)
234 #else
235 #define qcar(p) (((Cons_Cell *) (p))->car)
236 #define qcdr(p) (((Cons_Cell *) (p))->cdr)
237 #endif
238 #define car32(p) (*(int32_t *)(p))
239 #define cdr32(p) (*(int32_t *)(p))[1])
240 typedef Lisp_Object Special_Form(Lisp_Object, Lisp_Object);
241 typedef Lisp_Object one_args(Lisp_Object, Lisp_Object);
242 typedef Lisp_Object two_args(Lisp_Object, Lisp_Object, Lisp_Object);
243 typedef Lisp_Object MS_CDECL n_args(Lisp_Object, int, ...);
244 typedef uintptr_t Header;
245 #define header_mask 0x3f0
246 #define type_of_header(h) (((unsigned int)(h)) & header_mask)
247 #define length_of_header(h) (((uint32_t)(h)) >> 10)
248 #define TYPE_SYMBOL 0x00000010
249 #define SYM_SPECIAL_VAR 0x00000040
250 #define SYM_GLOBAL_VAR 0x00000080
251 #define SYM_SPECIAL_FORM 0x00000100
252 #define SYM_MACRO 0x00000200
253 #define SYM_C_DEF 0x00000400
254 #define SYM_CODEPTR 0x00000800
255 #define SYM_ANY_GENSYM 0x00001000
256 #define SYM_TRACED 0x00002000
257 #define SYM_FASTGET_MASK 0x000fc000
258 #define SYM_FASTGET_SHIFT 14
259 #ifdef COMMON
260 #define SYM_EXTERN_IN_HOME 0x00100000
261 #define SYM_IN_PACKAGE 0xffe00000
262 #define SYM_IN_PKG_SHIFT 23
263 #define SYM_IN_PKG_COUNT 11
264 #else
265 #define SYM_UNPRINTED_GENSYM 0x00100000
266 #endif
267 #define symhdr_length ((sizeof(Symbol_Head) + 7) & ~7)
268 #define is_symbol_header(h) (((int)h & 0x30) == TYPE_SYMBOL)
269 #define header_fastget(h) (((h) >> SYM_FASTGET_SHIFT) & 0x3f)
270 #define TYPE_BIGNUM 0x020
271 #ifdef COMMON
272 #define TYPE_RATNUM 0x060
273 #define TYPE_COMPLEX_NUM 0x0a0
274 #define TYPE_SINGLE_FLOAT 0x120
275 #endif
276 #define TYPE_DOUBLE_FLOAT 0x160
277 #ifdef COMMON
278 #define TYPE_LONG_FLOAT 0x1a0
279 #endif
280 #ifdef MEMORY_TRACE
281 #define numhdr(v) (*(Header *)memory_reference((intptr_t)((char *)(v) - \
282 TAG_NUMBERS)))
283 #define flthdr(v) (*(Header *)memory_reference((intptr_t)((char *)(v) - \
284 TAG_BOXFLOAT)))
285 #else
286 #define numhdr(v) (*(Header *)((char *)(v) - TAG_NUMBERS))
287 #define flthdr(v) (*(Header *)((char *)(v) - TAG_BOXFLOAT))
288 #endif
289 #define is_numbers_header(h) (((int)(h) & 0x330) == 0x020)
290 #define is_boxfloat_header(h)(((int)(h) & 0x330) == 0x120)
291 #ifdef COMMON
292 #define is_ratio(n) \
293 (type_of_header(numhdr(n)) == TYPE_RATNUM)
294 #define is_complex(n) \
295 (type_of_header(numhdr(n)) == TYPE_COMPLEX_NUM)
296 #endif
297 #define is_bignum_header(h) (type_of_header(h) == TYPE_BIGNUM)
298 #define is_bignum(n) is_bignum_header(numhdr(n))
299 #define ADDRESS_SHIFT (SIXTY_FOUR_BIT ? 3 : 2)
300 #ifdef MEMORY_TRACE
301 #define vechdr(v) (*(Header *)memory_reference((intptr_t)((char *)(v) - \
302 TAG_VECTOR)))
303 #define elt(v, n) (*(Lisp_Object *)memory_reference((intptr_t)((char *)(v) + \
304 (CELL-TAG_VECTOR) + \
305 (((intptr_t)(n))<<ADDRESS_SHIFT))))
306 #define celt(v, n) (*cmemory_reference((intptr_t)((char *)(v) + \
307 (CELL-TAG_VECTOR)+((intptr_t)(n)))))
308 #define ucelt(v, n) (*(unsigned char *)cmemory_reference( \
309 (intptr_t)((char *)(v) + \
310 (CELL-TAG_VECTOR)+((intptr_t)(n)))))
311 #define scelt(v, n) (*(signed char *)cmemory_reference( \
312 (intptr_t)((char *)(v) + \
313 (CELL-TAG_VECTOR)+((intptr_t)(n)))))
314 #else
315 #define vechdr(v) (*(Header *)((char *)(v) - TAG_VECTOR))
316 #define elt(v, n) (*(Lisp_Object *)((char *)(v) + \
317 (CELL-TAG_VECTOR) + \
318 (((intptr_t)(n))<<ADDRESS_SHIFT)))
319 #define celt(v, n) (*((char *)(v) + (CELL-TAG_VECTOR)+((intptr_t)(n))))
320 #define ucelt(v, n) (*((unsigned char *)(v) + (CELL-TAG_VECTOR)+((intptr_t)(n))))
321 #define scelt(v, n) (*((signed char *)(v) + (CELL-TAG_VECTOR)+((intptr_t)(n))))
322 #endif
323 #define helt(v, n) \
324 ((*(unsigned char *)((v) + (CELL-TAG_VECTOR) + (2*(intptr_t)(n))) | \
325 (*(signed char *)((v) + (CELL-TAG_VECTOR+1) + (2*(intptr_t)(n)))) << 8))
326 #define sethelt(v, n, x) \
327 do { \
328 *(char *)((v) + (CELL-TAG_VECTOR+0) + (2*(intptr_t)(n))) = (x); \
329 *(char *)((v) + (CELL-TAG_VECTOR+1) + (2*(intptr_t)(n))) = (x)>>8; \
330 } while (0)
331 #define ielt(v, n) (*(intptr_t *)((char *)(v) + \
332 (CELL-TAG_VECTOR)+(((intptr_t)(n))<<ADDRESS_SHIFT)))
333 #define ielt32(v, n) (*(int32_t *)((char *)(v) + \
334 (CELL-TAG_VECTOR)+(((intptr_t)(n))<<2)))
335 #define felt(v, n) (*(float *)((char *)(v) + \
336 (CELL-TAG_VECTOR)+(((intptr_t)(n))<<2)))
337 #define delt(v, n) (*(double *)((char *)(v) + \
338 (2*CELL-TAG_VECTOR)+(((intptr_t)(n))<<3)))
339 #ifdef COMMON
340 #define TYPE_BITVEC1 0x030
341 #define TYPE_BITVEC2 0x0b0
342 #define TYPE_BITVEC3 0x130
343 #define TYPE_BITVEC4 0x1b0
344 #define TYPE_BITVEC5 0x230
345 #define TYPE_BITVEC6 0x2b0
346 #define TYPE_BITVEC7 0x330
347 #define TYPE_BITVEC8 0x3b0
348 #define header_of_bitvector(h) (((h) & 0x70) == TYPE_BITVEC1)
349 #endif
350 #define TYPE_STRING 0x070
351 #define TYPE_BPS 0x170
352 #define TYPE_SPARE 0x270
353 #define TYPE_MAPLEREF TYPE_SPARE
354 #define TYPE_SP 0x370
355 #ifdef COMMON
356 #define vector_holds_binary(h) (((h) & 0x80) == 0 || header_of_bitvector(h))
357 #else
358 #define vector_holds_binary(h) (((h) & 0x80) == 0)
359 #endif
360 #define TYPE_SIMPLE_VEC 0x0f0
361 #define TYPE_HASH 0x1f0
362 #define TYPE_ARRAY 0x2f0
363 #define TYPE_STRUCTURE 0x3f0
364 #define is_mixed_header(h) (((h) & 0x2b0) == TYPE_MIXED1)
365 #define TYPE_VEC8 TYPE_BPS
366 #define TYPE_VEC16 0x220
367 #define TYPE_VEC32 0x260
368 #define TYPE_MIXED1 0x2a0
369 #define TYPE_MIXED2 0x2e0
370 #define TYPE_FLOAT32 0x320
371 #define TYPE_FLOAT64 0x360
372 #define TYPE_MIXED3 0x3a0
373 #define TYPE_STREAM 0x3e0
374 #define ODDS_MASK 0xff
375 #define TAG_CHAR 0x02
376 #define TAG_BPS 0x42
377 #define TAG_SPID 0xc2
378 #define SPID_NIL (TAG_SPID+0x0000)
379 #define SPID_FBIND (TAG_SPID+0x0100)
380 #define SPID_CATCH (TAG_SPID+0x0200)
381 #define SPID_PROTECT (TAG_SPID+0x0300)
382 #define SPID_HASH0 (TAG_SPID+0x0400)
383 #define SPID_HASH1 (TAG_SPID+0x0500)
384 #define SPID_GCMARK (TAG_SPID+0x0600)
385 #define SPID_NOINPUT (TAG_SPID+0x0700)
386 #define SPID_ERROR (TAG_SPID+0x0800)
387 #define SPID_PVBIND (TAG_SPID+0x0900)
388 #define SPID_NOARG (TAG_SPID+0x0a00)
389 #define SPID_NOPROP (TAG_SPID+0x0b00)
390 #define SPID_LIBRARY (TAG_SPID+0x0c00)
391 #define is_header(x) (((int)(x) & 0x30) != 0)
392 #define is_char(x) (((int)(x) & ODDS_MASK) == TAG_CHAR)
393 #define is_bps(x) (((int)(x) & ODDS_MASK) == TAG_BPS)
394 #define is_spid(x) (((int)(x) & ODDS_MASK) == TAG_SPID)
395 #define is_library(x)(((int)(x) & 0xffff) == SPID_LIBRARY)
396 #define library_number(x) (((x) >> 20) & 0xfff)
397 #ifdef OLD_VERSION
398 #define font_of_char(n) (((int32_t)(n) >> 24) & 0xff)
399 #define bits_of_char(n) (((int32_t)(n) >> 16) & 0xff)
400 #ifdef Kanji
401 #define code_of_char(n) (((int32_t)(n) >> 8) & 0xffff)
402 #else
403 #define code_of_char(n) ((char)(((int32_t)(n) >> 8) & 0xff))
404 #endif
405 #define pack_char(bits, font, code) \
406 ((Lisp_Object)((((uint32_t)(font)) << 24) | \
407 (((uint32_t)(bits)) << 16) | (((uint32_t)(code)) << 8) | TAG_CHAR))
408
409 #define CHAR_EOF pack_char(0, 0xff, 4)
410 #else
411 #define font_of_char(n) (((int32_t)(n) >> 29) & 0x03)
412 #define bits_of_char(n) (0)
413 #define code_of_char(n) (((int32_t)(n) >> 8) & 0x001fffff)
414 #define pack_char(bits, font, code) \
415 ((Lisp_Object)((((uint32_t)(font)) << 29) | \
416 (((uint32_t)(code)) << 8) | TAG_CHAR))
417
418 #define CHAR_EOF ((Lisp_Object)(int32_t)0xff000402)
419 #endif
420 #define data_of_bps(v) \
421 ((char *)(doubleword_align_up((intptr_t) \
422 bps_pages[((uint32_t)(v))>>(PAGE_BITS+6)]) + \
423 (SIXTY_FOUR_BIT ? \
424 (intptr_t)((((uint64_t)(v))>>(32-PAGE_BITS)) & \
425 PAGE_POWER_OF_TWO) : \
426 0) + \
427 (((v) >> 6) & (PAGE_POWER_OF_TWO-4))))
428 typedef int32_t junk;
429 typedef intptr_t junkxx;
430 typedef struct Symbol_Head
431 {
432 Header header;
433 Lisp_Object value;
434 Lisp_Object env;
435 intptr_t function1;
436 intptr_t function2;
437 intptr_t functionn;
438 Lisp_Object pname;
439 Lisp_Object plist;
440 Lisp_Object fastgets;
441 uintptr_t count;
442 #ifdef COMMON
443 Lisp_Object package;
444 #endif
445 } Symbol_Head;
446 #define MAX_FASTGET_SIZE 63
447 #ifdef COMMON
448 #define symalign(n) (SIXTY_FOUR_BIT ? \
449 ((char *)((intptr_t)(n) & ~(intptr_t)TAG_SYMBOL)) : \
450 (n)
451 #else
452 #define symalign(n) (n)
453 #endif
454 #ifndef MEMORY_TRACE
455 #define qheader(p) (*(Header *) symalign((char *)(p) - TAG_SYMBOL))
456 #define qvalue(p) (*(Lisp_Object *)symalign((char *)(p) + (CELL - TAG_SYMBOL)))
457 #define qenv(p) (*(Lisp_Object *)symalign((char *)(p) + (2*CELL - TAG_SYMBOL)))
458 #define qfn1(p) ((one_args *) *((intptr_t *)symalign((char *)(p) + \
459 (3*CELL - TAG_SYMBOL))))
460 #define qfn2(p) ((two_args *) *((intptr_t *)symalign((char *)(p) + \
461 (4*CELL - TAG_SYMBOL))))
462 #define qfnn(p) ((n_args *) *((intptr_t *)symalign((char *)(p) + \
463 (5*CELL - TAG_SYMBOL))))
464 #define ifn1(p) (*(intptr_t *) symalign((char *)(p) + (3*CELL-TAG_SYMBOL)))
465 #define ifn2(p) (*(intptr_t *) symalign((char *)(p) + (4*CELL-TAG_SYMBOL)))
466 #define ifnn(p) (*(intptr_t *) symalign((char *)(p) + (5*CELL-TAG_SYMBOL)))
467 #define qpname(p) (*(Lisp_Object *)symalign((char *)(p) + (6*CELL-TAG_SYMBOL)))
468 #define qplist(p) (*(Lisp_Object *)symalign((char *)(p) + (7*CELL-TAG_SYMBOL)))
469 #define qfastgets(p) (*(Lisp_Object *)symalign((char *)(p) + (8*CELL-TAG_SYMBOL)))
470 #define qcount(p) (*(uintptr_t *) symalign((char *)(p) + (9*CELL-TAG_SYMBOL)))
471 #ifdef COMMON
472 #define qpackage(p) (*(Lisp_Object *)symalign((char *)(p) + (10*CELL-TAG_SYMBOL)))
473 #endif
474 #else
475 #define qheader(p) (*(Header *) memory_reference((intptr_t) \
476 symalign((char *)(p) - TAG_SYMBOL)))
477 #define qvalue(p) (*(Lisp_Object *)memory_reference((intptr_t) \
478 symalign((char *)(p) + (CELL-TAG_SYMBOL))))
479 #define qenv(p) (*(Lisp_Object *)memory_reference((intptr_t) \
480 symalign((char *)(p) + (2*CELL-TAG_SYMBOL))))
481 #define qfn1(p) ((one_args *) *(intptr_t *)memory_reference((intptr_t) \
482 symalign((char *)(p) + (3*CELL-TAG_SYMBOL))))
483 #define qfn2(p) ((two_args *) *(intptr_t *)memory_reference((intptr_t) \
484 symalign((char *)(p) + (4*CELL-TAG_SYMBOL))))
485 #define qfnn(p) ((n_args *) *(intptr_t *)memory_reference((intptr_t) \
486 symalign((char *)(p) + (5*CELL-TAG_SYMBOL))))
487 #define ifn1(p) (*(intptr_t *) memory_reference((intptr_t) \
488 symalign((char *)(p) + (3*CELL-TAG_SYMBOL))))
489 #define ifn2(p) (*(intptr_t *) memory_reference((intptr_t) \
490 symalign((char *)(p) + (4*CELL-TAG_SYMBOL))))
491 #define ifnn(p) (*(intptr_t *) memory_reference((intptr_t) \
492 symalign((char *)(p) + (5*CELL-TAG_SYMBOL))))
493 #define qpname(p) (*(Lisp_Object *)memory_reference((intptr_t) \
494 symalign((char *)(p) + (6*CELL-TAG_SYMBOL))))
495 #define qplist(p) (*(Lisp_Object *)memory_reference((intptr_t) \
496 symalign((char *)(p) + (7*CELL-TAG_SYMBOL))))
497 #define qfastgets(p) (*(Lisp_Object *)memory_reference((intptr_t) \
498 symalign((char *)(p) + (8*CELL-TAG_SYMBOL))))
499 #define qcount(p) (*(uintptr_t *) memory_reference((intptr_t) \
500 symalign((char *)(p) + (9*CELL-TAG_SYMBOL))))
501 #ifdef COMMON
502 #define qpackage(p) (*(Lisp_Object *)memory_reference((intptr_t) \
503 symalign((char *)(p) + (10*CELL-TAG_SYMBOL))))
504 #endif
505 #endif
506 #ifdef COMMON
507 typedef union Float_union
508 {
509 float f;
510 int32_t i;
511 } Float_union;
512 #endif
513 typedef struct Big_Number
514 {
515 Header h;
516 uint32_t d[1];
517 } Big_Number;
518 #define bignum_length(b) length_of_header(numhdr(b))
519 #ifdef MEMORY_TRACE
520 #define bignum_digits(b) ((uint32_t *)memory_reference((intptr_t)((char *)b + \
521 (CELL-TAG_NUMBERS))))
522 #else
523 #define bignum_digits(b) ((uint32_t *)((char *)b + (CELL-TAG_NUMBERS)))
524 #endif
525 #define make_bighdr(n) (TAG_ODDS+TYPE_BIGNUM+(((intptr_t)(n))<<12))
526 #define pack_hdrlength(n) (((intptr_t)(n))<<12)
527 #ifdef COMMON
528 typedef struct Rational_Number
529 {
530 Header header;
531 Lisp_Object num;
532 Lisp_Object den;
533 } Rational_Number;
534 #define numerator(r) (((Rational_Number *)((char *)(r)-TAG_NUMBERS))->num)
535 #define denominator(r) (((Rational_Number *)((char *)(r)-TAG_NUMBERS))->den)
536 typedef struct Complex_Number
537 {
538 Header header;
539 Lisp_Object real;
540 Lisp_Object imag;
541 } Complex_Number;
542 #define real_part(r) (((Complex_Number *)((char *)(r)-TAG_NUMBERS))->real)
543 #define imag_part(r) (((Complex_Number *)((char *)(r)-TAG_NUMBERS))->imag)
544 typedef struct Single_Float
545 {
546 Header header;
547 union float_or_int {
548 float f;
549 int32_t i;
550 } f;
551 } Single_Float;
552 #define single_float_val(v) \
553 (((Single_Float *)((char *)(v)-TAG_BOXFLOAT))->f.f)
554 #endif
555 #define SIZEOF_DOUBLE_FLOAT 16
556 #define double_float_addr(v) ((double *)((char *)(v) + \
557 (8-TAG_BOXFLOAT)))
558 #define double_float_val(v) (*(double *)((char *)(v) + \
559 (8-TAG_BOXFLOAT)))
560 #ifdef COMMON
561 #define SIZEOF_LONG_FLOAT 16
562 #define long_float_addr(v) ((double *)((char *)(v) + \
563 (8-TAG_BOXFLOAT)))
564 #define long_float_val(v) (*(double *)((char *)(v) + \
565 (8-TAG_BOXFLOAT)))
566 #endif
567 #define word_align_up(n) ((Lisp_Object)(((intptr_t)(n) + 3) & (-4)))
568 #define doubleword_align_up(n) ((Lisp_Object)(((intptr_t)(n) + 7) & (-8)))
569 #define doubleword_align_down(n) ((Lisp_Object)((intptr_t)(n) & (-8)))
570 #define object_align_up(n) ((Lisp_Object)(((intptr_t)(n) + \
571 sizeof(Lisp_Object) - 1) & (-sizeof(Lisp_Object))))
572 #define quadword_align_up(n) ((Lisp_Object)(((intptr_t)(n) + 15) & (-16)))
573 #define quadword_align_down(n) ((Lisp_Object)((intptr_t)(n) & (-16)))
574 #define UNWIND_NULL 0x0
575 #define UNWIND_GO 0x1
576 #define UNWIND_RETURN 0x2
577 #define UNWIND_THROW 0x3
578 #define UNWIND_RESTART 0x4
579 #define UNWIND_RESOURCE 0x5
580 #define UNWIND_FNAME 0x100
581 #define UNWIND_ARGS 0x200
582 #define UNWIND_ERROR (UNWIND_FNAME|UNWIND_ARGS)
583 #define UNWIND_UNWIND 0x400
584 #endif
585 #ifndef header_cslerror_h
586 #define header_cslerror_h 1
587 extern Lisp_Object interrupted(Lisp_Object p);
588 extern Lisp_Object MS_CDECL error(int nargs, int code, ...);
589 extern Lisp_Object MS_CDECL cerror(int nargs, int code1, int code2, ...);
590 extern Lisp_Object too_few_2(Lisp_Object env, Lisp_Object a1);
591 extern Lisp_Object too_many_1(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
592 extern Lisp_Object wrong_no_0a(Lisp_Object env, Lisp_Object a1);
593 extern Lisp_Object wrong_no_0b(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
594 extern Lisp_Object wrong_no_3a(Lisp_Object env, Lisp_Object a1);
595 extern Lisp_Object wrong_no_3b(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
596 extern Lisp_Object wrong_no_na(Lisp_Object env, Lisp_Object a1);
597 extern Lisp_Object wrong_no_nb(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
598 extern Lisp_Object MS_CDECL wrong_no_1(Lisp_Object env, int nargs, ...);
599 extern Lisp_Object MS_CDECL wrong_no_2(Lisp_Object env, int nargs, ...);
600 extern Lisp_Object bad_special2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
601 extern Lisp_Object MS_CDECL bad_specialn(Lisp_Object env, int nargs, ...);
602 extern Lisp_Object aerror(char *s);
603 extern Lisp_Object aerror0(char *s);
604 extern Lisp_Object aerror1(char *s, Lisp_Object a);
605 extern Lisp_Object aerror2(char *s, Lisp_Object a, Lisp_Object b);
606 extern void MS_CDECL fatal_error(int code, ...);
607 #define GC_MESSAGES 0x01
608 #define FASL_MESSAGES 0x02
609 #define VERBOSE_MSGS 0x04
610 #define GC_MSG_BITS 0x07
611 #define verbos_flag (miscflags & GC_MSG_BITS)
612 #define HEADLINE_FLAG 0x08
613 #define FNAME_FLAG 0x10
614 #define ARGS_FLAG 0x20
615 #define BACKTRACE_MSG_BITS 0x38
616
617 #define err_bad_car 0
618 #define err_bad_cdr 1
619 #define err_no_store 2
620 #define err_undefined_function_1 3
621 #define err_undefined_function_2 4
622 #define err_undefined_function_n 5
623 #define err_wrong_no_args 6
624 #define err_unbound_lexical 7
625 #define err_bad_rplac 8
626 #define err_bad_arith 9
627 #define err_redef_special 10
628 #define err_bad_arg 11
629 #define err_bad_declare 12
630 #define err_bad_fn 13
631 #define err_unset_var 14
632 #define err_too_many_args1 15
633 #define err_too_many_args2 16
634 #define err_bad_apply 17
635 #define err_macroex_hook 18
636 #define err_block_tag 19
637 #define err_go_tag 20
638 #define err_excess_args 21
639 #define err_insufficient_args 22
640 #define err_bad_bvl 23
641 #define err_bad_keyargs 24
642 #define err_write_err 25
643 #define err_bad_endp 26
644 #define err_no_fasldir 27
645 #define err_no_fasl 28
646 #define err_open_failed 29
647 #define err_pipe_failed 30
648 #define err_stack_overflow 31
649 #define err_top_bit 32
650 #define err_mem_spans_zero 33
651 #define err_no_longer_used 34
652 #define err_no_tempdir 35
653
654 #ifdef INCLUDE_ERROR_STRING_TABLE
655 static char *error_message_table[] =
656 {
657 "attempt to take car of an atom",
658 "attempt to take cdr of an atom",
659 "insufficient freestore to run this package",
660 "undefined function (1 arg)",
661 "undefined function (2 args)",
662 "undefined function",
663 "wrong number of arguments",
664 "unbound lexical variable",
665 "bad rplaca/rplacd",
666 "bad argument for an arithmetic function",
667 "attempt to redefine a special form",
668 "not a variable",
669 "bad use of declare",
670 "attempt to apply non-function",
671 "unset variable",
672 "too many arguments",
673 "too many arguments",
674 "object not valid as a function (apply,",
675 "macroexpand-hook failure",
676 "block tag not found",
677 "go tag not found",
678 "too many arguments provided",
679 "not enough arguments provided",
680 "bad item in bound variable list",
681 "bad keyword arguments",
682 "write-error on file",
683 "endp used on badly terminated list",
684 "environment parameter 'fasldir' not set",
685 "loadable module not found for loading",
686 "file could not be opened",
687 "unable to establish pipe",
688 "stack overflow",
689 "top bit of address has unexpected value",
690 "memory block spans the zero address",
691 "this error code available for re-use",
692 "unable to find a directory for temporary files",
693 "dummy final error message"
694 };
695 #endif
696 #endif
697 #ifndef header_externs_h
698 #define header_externs_h 1
699 #ifdef __cplusplus
700 extern "C" {
701 #endif
702 #ifdef USE_MPI
703 #include "mpi.h"
704 extern int32_t mpi_rank,mpi_size;
705 #endif
706 #define D do { \
707 char *fffff = strrchr(__FILE__, '/'); \
708 if (fffff == NULL) fffff = strrchr(__FILE__, '\\'); \
709 if (fffff == NULL) fffff = __FILE__; else fffff++; \
710 fprintf(stderr, "Line %d File %s\n", __LINE__, fffff); \
711 fflush(stderr); \
712 } while (0)
713 #define DS(s) do { \
714 char *fffff = strrchr(__FILE__, '/'); \
715 if (fffff == NULL) fffff = strrchr(__FILE__, '\\'); \
716 if (fffff == NULL) fffff = __FILE__; else fffff++; \
717 fprintf(stderr, "Line %d File %s: %s\n", __LINE__, fffff, (s)); \
718 fflush(stderr); \
719 } while (0)
720 #define DX(s) do { \
721 char *fffff = strrchr(__FILE__, '/'); \
722 if (fffff == NULL) fffff = strrchr(__FILE__, '\\'); \
723 if (fffff == NULL) fffff = __FILE__; else fffff++; \
724 fprintf(stderr, "Line %d File %s: %llx\n", __LINE__, fffff, \
725 (long long unsigned)(s)); \
726 fflush(stderr); \
727 } while (0)
728 extern void **pages,
729 **heap_pages, **vheap_pages,
730 **bps_pages, **native_pages;
731 extern void **new_heap_pages, **new_vheap_pages,
732 **new_bps_pages, **new_native_pages;
733 #ifdef CONSERVATIVE
734 #define PAGE_TYPE_CONS 0
735 #define PAGE_TYPE_VECTOR 1
736 #define PAGE_TYPE_BPS 2
737 #define PAGE_TYPE_NATIVE 3
738 typedef struct page_map_t
739 {
740 void *start;
741 void *end;
742 int type;
743 } page_map_t;
744 #endif
745 extern int32_t pages_count,
746 heap_pages_count, vheap_pages_count,
747 bps_pages_count, native_pages_count;
748 extern int32_t new_heap_pages_count, new_vheap_pages_count,
749 new_bps_pages_count, new_native_pages_count;
750 extern int32_t native_pages_changed;
751 extern int32_t native_fringe;
752 extern Lisp_Object *nilsegment, *stacksegment;
753 extern Lisp_Object *stackbase;
754 extern int32_t stack_segsize;
755 extern Lisp_Object *C_stack;
756 #define stack C_stack
757 extern char *C_stack_limit;
758 extern CSLbool restartp;
759 extern char *big_chunk_start, *big_chunk_end;
760 #ifdef CONSERVATIVE
761 extern Lisp_Object *C_stackbase, *C_stacktop;
762 #endif
763 #ifdef MEMORY_TRACE
764 #define push(a) do { \
765 *++stack = (a); \
766 memory_reference((intptr_t)stack); } while (0)
767 #define push2(a,b) do { \
768 *++stack = (a); \
769 memory_reference((intptr_t)stack); \
770 *++stack = (b); \
771 memory_reference((intptr_t)stack); } while (0)
772 #define push3(a,b,c) do { \
773 *++stack = (a); \
774 memory_reference((intptr_t)stack); \
775 *++stack = (b); \
776 memory_reference((intptr_t)stack); \
777 *++stack = (c); \
778 memory_reference((intptr_t)stack); } while (0)
779 #define push4(a,b,c,d) do { \
780 *++stack = (a); \
781 memory_reference((intptr_t)stack); \
782 *++stack = (b); \
783 memory_reference((intptr_t)stack); \
784 *++stack = (c); \
785 memory_reference((intptr_t)stack); \
786 *++stack = (d); \
787 memory_reference((intptr_t)stack); } while (0)
788 #define push5(a,b,c,d,e)do { \
789 *++stack = (a); \
790 memory_reference((intptr_t)stack); \
791 *++stack = (b); \
792 memory_reference((intptr_t)stack); \
793 *++stack = (c); \
794 memory_reference((intptr_t)stack); \
795 *++stack = (d); \
796 memory_reference((intptr_t)stack); \
797 *++stack = (e); \
798 memory_reference((intptr_t)stack); } while (0)
799 #define push6(a,b,c,d,e,f) do {push3(a,b,c); push3(d,e,f); } while (0)
800 #define my_pop() (memory_reference((int32_t)stack), (*stack--))
801 #define pop(a) { memory_reference((intptr_t)stack); (a) = *stack--; }
802 #define pop2(a,b) { memory_reference((intptr_t)stack); (a) = *stack--; memory_reference((intptr_t)stack); (b) = *stack--; }
803 #define pop3(a,b,c) { memory_reference((intptr_t)stack); (a) = *stack--; memory_reference((intptr_t)stack); (b) = *stack--; memory_reference((intptr_t)stack); (c) = *stack--; }
804 #define pop4(a,b,c,d) { memory_reference((intptr_t)stack); (a) = *stack--; memory_reference((intptr_t)stack); (b) = *stack--; memory_reference((intptr_t)stack); (c) = *stack--; \
805 memory_reference((intptr_t)stack); (d) = *stack--; }
806 #define pop5(a,b,c,d,e) { memory_reference((intptr_t)stack); (a) = *stack--; memory_reference((intptr_t)stack); (b) = *stack--; memory_reference((intptr_t)stack); (c) = *stack--; \
807 memory_reference((intptr_t)stack); (d) = *stack--; memory_reference((intptr_t)stack); (e) = *stack--; }
808 #define pop6(a,b,c,d,e,f) {pop3(a,b,c); pop3(d,e,f)}
809 #define popv(n) stack -= (n)
810 #else
811 #define push(a) { *++stack = (a); }
812 #define push2(a,b) { stack[1] = (a); stack[2] = (b); stack += 2; }
813 #define push3(a,b,c) { stack[1] = (a); stack[2] = (b); stack[3] = (c); \
814 stack += 3; }
815 #define push4(a,b,c,d) { stack[1] = (a); stack[2] = (b); stack[3] = (c); \
816 stack[4] = (d); stack += 4; }
817 #define push5(a,b,c,d,e){ stack[1] = (a); stack[2] = (b); stack[3] = (c); \
818 stack[4] = (d); stack[5] = (e); stack += 5; }
819 #define push6(a,b,c,d,e,f) { \
820 stack[1] = (a); stack[2] = (b); stack[3] = (c); \
821 stack[4] = (d); stack[5] = (e); stack[6] = (f); \
822 stack += 6; }
823 #define pop(a) { (a) = *stack--; }
824 #define pop2(a,b) { stack -= 2; (a) = stack[2]; (b) = stack[1]; }
825 #define pop3(a,b,c) { stack -= 3; (a) = stack[3]; (b) = stack[2]; \
826 (c) = stack[1]; }
827 #define pop4(a,b,c,d) { stack -= 4; (a) = stack[4]; (b) = stack[3]; \
828 (c) = stack[2]; (d) = stack[1]; }
829 #define pop5(a,b,c,d,e) { stack -= 5; (a) = stack[5]; (b) = stack[4]; \
830 (c) = stack[3]; (d) = stack[2]; (e) = stack[1]; }
831 #define pop6(a,b,c,d,e, f) { stack -= 6; \
832 (a) = stack[6]; (b) = stack[5]; (c) = stack[4]; \
833 (d) = stack[3]; (e) = stack[2]; (f) = stack[1]; }
834 #define popv(n) stack -= (n)
835 #endif
836 #define errexit() { nil = C_nil; if (exception_pending()) return nil; }
837 #define errexitn(n) { nil = C_nil; \
838 if (exception_pending()) { popv(n); return nil; } }
839 #define errexitv() { nil = C_nil; if (exception_pending()) return; }
840 #define errexitvn(n) { nil = C_nil; \
841 if (exception_pending()) { popv(n); return; } }
842 #define GC_USER_SOFT 0
843 #define GC_USER_HARD 1
844 #define GC_STACK 2
845 #define GC_CONS 3
846 #define GC_VEC 4
847 #define GC_BPS 5
848 #define GC_PRESERVE 6
849 #define GC_NATIVE 7
850 extern volatile char stack_contents_temp;
851 #ifdef CHECK_STACK
852 extern int check_stack(char *file, int line);
853 extern void show_stack();
854 #define if_check_stack \
855 if (check_stack(__FILE__,__LINE__)) \
856 { show_stack(); return aerror("stack overflow"); }
857 #else
858 #define if_check_stack \
859 { char *p = (char *)&p; \
860 if (p < C_stack_limit) return aerror("stack overflow"); \
861 }
862 #endif
863 extern int32_t software_ticks, countdown;
864 #define stackcheck0(k) \
865 if_check_stack \
866 if ((--countdown < 0 && deal_with_tick()) || \
867 stack >= stacklimit) \
868 { reclaim(nil, "stack", GC_STACK, 0); \
869 nil = C_nil; \
870 if (exception_pending()) { popv(k); return nil; } \
871 }
872 #define stackcheck1(k, a1) \
873 if_check_stack \
874 if ((--countdown < 0 && deal_with_tick()) || \
875 stack >= stacklimit) \
876 { a1 = reclaim(a1, "stack", GC_STACK, 0); \
877 nil = C_nil; \
878 if (exception_pending()) { popv(k); return nil; } \
879 }
880 #define stackcheck2(k, a1, a2) \
881 if_check_stack \
882 if ((--countdown < 0 && deal_with_tick()) || \
883 stack >= stacklimit) \
884 { push(a2); \
885 a1 = reclaim(a1, "stack", GC_STACK, 0); pop(a2); \
886 nil = C_nil; \
887 if (exception_pending()) { popv(k); return nil; } \
888 }
889 #define stackcheck3(k, a1, a2, a3) \
890 if_check_stack \
891 if ((--countdown < 0 && deal_with_tick()) || \
892 stack >= stacklimit) \
893 { push2(a2, a3); \
894 a1 = reclaim(a1, "stack", GC_STACK, 0); \
895 pop2(a3, a2); \
896 nil = C_nil; \
897 if (exception_pending()) { popv(k); return nil; } \
898 }
899 #define stackcheck4(k, a1, a2, a3, a4) \
900 if_check_stack \
901 if ((--countdown < 0 && deal_with_tick()) || \
902 stack >= stacklimit) \
903 { push3(a2, a3, a4); \
904 a1 = reclaim(a1, "stack", GC_STACK, 0); \
905 pop3(a4, a3, a2); \
906 nil = C_nil; \
907 if (exception_pending()) { popv(k); return nil; } \
908 }
909 extern Lisp_Object C_nil;
910 #define first_nil_offset 50
911 #define work_0_offset 200
912 #define last_nil_offset 251
913 #define NIL_SEGMENT_SIZE (last_nil_offset*sizeof(Lisp_Object) + 32)
914 #define SPARE 512
915 #ifdef COMMON
916 #define BASE ((Lisp_Object *)nil)
917 #else
918 #define BASE (SIXTY_FOUR_BIT ? ((Lisp_Object *)(nil+4)): ((Lisp_Object *)nil))
919 #endif
920 #ifdef NILSEG_EXTERNS
921 #define nil_as_base
922 extern intptr_t byteflip;
923 extern Lisp_Object codefringe;
924 extern Lisp_Object volatile codelimit;
925 extern Lisp_Object * volatile stacklimit;
926 extern Lisp_Object fringe;
927 extern Lisp_Object volatile heaplimit;
928 extern Lisp_Object volatile vheaplimit;
929 extern Lisp_Object vfringe;
930 extern intptr_t nwork;
931 extern intptr_t exit_count;
932 extern intptr_t gensym_ser, print_precision, miscflags;
933 extern intptr_t current_modulus, fastget_size, package_bits;
934 extern Lisp_Object lisp_true, lambda, funarg, unset_var, opt_key, rest_key;
935 extern Lisp_Object quote_symbol, function_symbol, comma_symbol;
936 extern Lisp_Object comma_at_symbol, cons_symbol, eval_symbol;
937 extern Lisp_Object work_symbol, evalhook, applyhook, macroexpand_hook;
938 extern Lisp_Object append_symbol, exit_tag, exit_value, catch_tags;
939 extern Lisp_Object current_package, startfn;
940 extern Lisp_Object gensym_base, string_char_sym, boffo;
941 extern Lisp_Object err_table;
942 extern Lisp_Object progn_symbol;
943 extern Lisp_Object lisp_work_stream, charvec, raise_symbol, lower_symbol;
944 extern Lisp_Object echo_symbol, codevec, litvec, supervisor, B_reg;
945 extern Lisp_Object savedef, comp_symbol, compiler_symbol, faslvec;
946 extern Lisp_Object tracedfn, lisp_terminal_io;
947 extern Lisp_Object lisp_standard_output, lisp_standard_input, lisp_error_output;
948 extern Lisp_Object lisp_trace_output, lisp_debug_io, lisp_query_io;
949 extern Lisp_Object prompt_thing, faslgensyms;
950 extern Lisp_Object prinl_symbol, emsg_star, redef_msg;
951 extern Lisp_Object expr_symbol, fexpr_symbol, macro_symbol;
952 extern Lisp_Object cl_symbols, active_stream, current_module;
953 extern Lisp_Object native_defs, features_symbol, lisp_package;
954 extern Lisp_Object sys_hash_table, help_index, cfunarg, lex_words;
955 extern Lisp_Object get_counts, fastget_names, input_libraries;
956 extern Lisp_Object output_library, current_file, break_function;
957 extern Lisp_Object standard_output, standard_input, debug_io;
958 extern Lisp_Object error_output, query_io, terminal_io;
959 extern Lisp_Object trace_output, fasl_stream;
960 extern Lisp_Object native_code, native_symbol, traceprint_symbol;
961 extern Lisp_Object loadsource_symbol;
962 extern Lisp_Object hankaku_symbol, bytecoded_symbol, nativecoded_symbol;
963 extern Lisp_Object gchook, resources, callstack, procstack, procmem;
964 #ifdef COMMON
965 extern Lisp_Object keyword_package;
966 extern Lisp_Object all_packages, package_symbol, internal_symbol;
967 extern Lisp_Object external_symbol, inherited_symbol;
968 extern Lisp_Object key_key, allow_other_keys, aux_key;
969 extern Lisp_Object format_symbol;
970 extern Lisp_Object expand_def_symbol, allow_key_key;
971 #endif
972 extern Lisp_Object declare_symbol, special_symbol;
973 #ifdef OPENMATH
974 extern Lisp_Object MS_CDECL om_openFileDev(Lisp_Object env, int nargs, ...);
975 extern Lisp_Object om_openStringDev(Lisp_Object nil, Lisp_Object lstr, Lisp_Object lenc);
976 extern Lisp_Object om_closeDev(Lisp_Object env, Lisp_Object dev);
977 extern Lisp_Object om_setDevEncoding(Lisp_Object nil, Lisp_Object ldev, Lisp_Object lenc);
978 extern Lisp_Object om_makeConn(Lisp_Object nil, Lisp_Object ltimeout);
979 extern Lisp_Object om_closeConn(Lisp_Object nil, Lisp_Object lconn);
980 extern Lisp_Object om_getConnInDevice(Lisp_Object nil, Lisp_Object lconn);
981 extern Lisp_Object om_getConnOutDevice(Lisp_Object nil, Lisp_Object lconn);
982 extern Lisp_Object MS_CDECL om_connectTCP(Lisp_Object nil, int nargs, ...);
983 extern Lisp_Object om_bindTCP(Lisp_Object nil, Lisp_Object lconn, Lisp_Object lport);
984 extern Lisp_Object om_putApp(Lisp_Object nil, Lisp_Object ldev);
985 extern Lisp_Object om_putEndApp(Lisp_Object nil, Lisp_Object ldev);
986 extern Lisp_Object om_putAtp(Lisp_Object nil, Lisp_Object ldev);
987 extern Lisp_Object om_putEndAtp(Lisp_Object nil, Lisp_Object ldev);
988 extern Lisp_Object om_putAttr(Lisp_Object nil, Lisp_Object ldev);
989 extern Lisp_Object om_putEndAttr(Lisp_Object nil, Lisp_Object ldev);
990 extern Lisp_Object om_putBind(Lisp_Object nil, Lisp_Object ldev);
991 extern Lisp_Object om_putEndBind(Lisp_Object nil, Lisp_Object ldev);
992 extern Lisp_Object om_putBVar(Lisp_Object nil, Lisp_Object ldev);
993 extern Lisp_Object om_putEndBVar(Lisp_Object nil, Lisp_Object ldev);
994 extern Lisp_Object om_putError(Lisp_Object nil, Lisp_Object ldev);
995 extern Lisp_Object om_putEndError(Lisp_Object nil, Lisp_Object ldev);
996 extern Lisp_Object om_putObject(Lisp_Object nil, Lisp_Object ldev);
997 extern Lisp_Object om_putEndObject(Lisp_Object nil, Lisp_Object ldev);
998 extern Lisp_Object om_putInt(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
999 extern Lisp_Object om_putFloat(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
1000 extern Lisp_Object om_putByteArray(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
1001 extern Lisp_Object om_putVar(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
1002 extern Lisp_Object om_putString(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
1003 extern Lisp_Object om_putSymbol(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
1004 extern Lisp_Object MS_CDECL om_putSymbol2(Lisp_Object nil, int nargs, ...);
1005 extern Lisp_Object om_getApp(Lisp_Object nil, Lisp_Object ldev);
1006 extern Lisp_Object om_getEndApp(Lisp_Object nil, Lisp_Object ldev);
1007 extern Lisp_Object om_getAtp(Lisp_Object nil, Lisp_Object ldev);
1008 extern Lisp_Object om_getEndAtp(Lisp_Object nil, Lisp_Object ldev);
1009 extern Lisp_Object om_getAttr(Lisp_Object nil, Lisp_Object ldev);
1010 extern Lisp_Object om_getEndAttr(Lisp_Object nil, Lisp_Object ldev);
1011 extern Lisp_Object om_getBind(Lisp_Object nil, Lisp_Object ldev);
1012 extern Lisp_Object om_getEndBind(Lisp_Object nil, Lisp_Object ldev);
1013 extern Lisp_Object om_getBVar(Lisp_Object nil, Lisp_Object ldev);
1014 extern Lisp_Object om_getEndBVar(Lisp_Object nil, Lisp_Object ldev);
1015 extern Lisp_Object om_getError(Lisp_Object nil, Lisp_Object ldev);
1016 extern Lisp_Object om_getEndError(Lisp_Object nil, Lisp_Object ldev);
1017 extern Lisp_Object om_getObject(Lisp_Object nil, Lisp_Object ldev);
1018 extern Lisp_Object om_getEndObject(Lisp_Object nil, Lisp_Object ldev);
1019 extern Lisp_Object om_getInt(Lisp_Object nil, Lisp_Object ldev);
1020 extern Lisp_Object om_getFloat(Lisp_Object nil, Lisp_Object ldev);
1021 extern Lisp_Object om_getByteArray(Lisp_Object nil, Lisp_Object ldev);
1022 extern Lisp_Object om_getVar(Lisp_Object nil, Lisp_Object ldev);
1023 extern Lisp_Object om_getString(Lisp_Object nil, Lisp_Object ldev);
1024 extern Lisp_Object om_getSymbol(Lisp_Object nil, Lisp_Object ldev);
1025 extern Lisp_Object om_getType(Lisp_Object nil, Lisp_Object ldev);
1026 extern Lisp_Object om_stringToStringPtr(Lisp_Object nil, Lisp_Object lstr);
1027 extern Lisp_Object om_stringPtrToString(Lisp_Object nil, Lisp_Object lpstr);
1028 extern Lisp_Object om_read(Lisp_Object nil, Lisp_Object dev);
1029 extern Lisp_Object om_supportsCD(Lisp_Object nil, Lisp_Object lcd);
1030 extern Lisp_Object om_supportsSymbol(Lisp_Object nil, Lisp_Object lcd, Lisp_Object lsym);
1031 extern Lisp_Object MS_CDECL om_listCDs(Lisp_Object nil, int nargs, ...);
1032 extern Lisp_Object om_listSymbols(Lisp_Object nil, Lisp_Object lcd);
1033 extern Lisp_Object om_whichCDs(Lisp_Object nil, Lisp_Object lsym);
1034 #endif
1035 extern Lisp_Object workbase[51];
1036 extern Lisp_Object user_base_0, user_base_1, user_base_2;
1037 extern Lisp_Object user_base_3, user_base_4, user_base_5;
1038 extern Lisp_Object user_base_6, user_base_7, user_base_8;
1039 extern Lisp_Object user_base_9;
1040 #define work_0 workbase[0]
1041 #define work_1 workbase[1]
1042 #define mv_1 workbase[1]
1043 #define mv_2 workbase[2]
1044 #define mv_3 workbase[3]
1045 #define work_50 workbase[50]
1046 #else
1047 #define nil_as_base Lisp_Object nil = C_nil;
1048 #define byteflip BASE[12]
1049 #define codefringe BASE[13]
1050 #define codelimit (*(Lisp_Object volatile *)&BASE[14])
1051 extern Lisp_Object * volatile stacklimit;
1052 #define fringe BASE[18]
1053 #define heaplimit (*(Lisp_Object volatile *)&BASE[19])
1054 #define vheaplimit (*(Lisp_Object volatile *)&BASE[20])
1055 #define vfringe BASE[21]
1056 #define miscflags BASE[22]
1057 #define nwork BASE[24]
1058 #define exit_count BASE[26]
1059 #define gensym_ser BASE[27]
1060 #define print_precision BASE[28]
1061 #define current_modulus BASE[29]
1062 #define fastget_size BASE[30]
1063 #define package_bits BASE[31]
1064 #define current_package BASE[52]
1065 #define B_reg BASE[53]
1066 #define codevec BASE[54]
1067 #define litvec BASE[55]
1068 #define exit_tag BASE[56]
1069 #define exit_value BASE[57]
1070 #define catch_tags BASE[58]
1071 #define lisp_package BASE[59]
1072 #define boffo BASE[60]
1073 #define charvec BASE[61]
1074 #define sys_hash_table BASE[62]
1075 #define help_index BASE[63]
1076 #define gensym_base BASE[64]
1077 #define err_table BASE[65]
1078 #define supervisor BASE[66]
1079 #define startfn BASE[67]
1080 #define faslvec BASE[68]
1081 #define tracedfn BASE[69]
1082 #define prompt_thing BASE[70]
1083 #define faslgensyms BASE[71]
1084 #define cl_symbols BASE[72]
1085 #define active_stream BASE[73]
1086 #define current_module BASE[74]
1087 #define native_defs BASE[75]
1088 #define append_symbol BASE[90]
1089 #define applyhook BASE[91]
1090 #define cfunarg BASE[92]
1091 #define comma_at_symbol BASE[93]
1092 #define comma_symbol BASE[94]
1093 #define compiler_symbol BASE[95]
1094 #define comp_symbol BASE[96]
1095 #define cons_symbol BASE[97]
1096 #define echo_symbol BASE[98]
1097 #define emsg_star BASE[99]
1098 #define evalhook BASE[100]
1099 #define eval_symbol BASE[101]
1100 #define expr_symbol BASE[102]
1101 #define features_symbol BASE[103]
1102 #define fexpr_symbol BASE[104]
1103 #define funarg BASE[105]
1104 #define function_symbol BASE[106]
1105 #define lambda BASE[107]
1106 #define lisp_true BASE[108]
1107 #define lower_symbol BASE[109]
1108 #define macroexpand_hook BASE[110]
1109 #define macro_symbol BASE[111]
1110 #define opt_key BASE[112]
1111 #define prinl_symbol BASE[113]
1112 #define progn_symbol BASE[114]
1113 #define quote_symbol BASE[115]
1114 #define raise_symbol BASE[116]
1115 #define redef_msg BASE[117]
1116 #define rest_key BASE[118]
1117 #define savedef BASE[119]
1118 #define string_char_sym BASE[120]
1119 #define unset_var BASE[121]
1120 #define work_symbol BASE[122]
1121 #define lex_words BASE[123]
1122 #define get_counts BASE[124]
1123 #define fastget_names BASE[125]
1124 #define input_libraries BASE[126]
1125 #define output_library BASE[127]
1126 #define current_file BASE[128]
1127 #define break_function BASE[129]
1128 #define lisp_work_stream BASE[130]
1129 #define lisp_standard_output BASE[131]
1130 #define lisp_standard_input BASE[132]
1131 #define lisp_debug_io BASE[133]
1132 #define lisp_error_output BASE[134]
1133 #define lisp_query_io BASE[135]
1134 #define lisp_terminal_io BASE[136]
1135 #define lisp_trace_output BASE[137]
1136 #define standard_output BASE[138]
1137 #define standard_input BASE[139]
1138 #define debug_io BASE[140]
1139 #define error_output BASE[141]
1140 #define query_io BASE[142]
1141 #define terminal_io BASE[143]
1142 #define trace_output BASE[144]
1143 #define fasl_stream BASE[145]
1144 #define native_code BASE[146]
1145 #define native_symbol BASE[147]
1146 #define traceprint_symbol BASE[148]
1147 #define loadsource_symbol BASE[149]
1148 #define hankaku_symbol BASE[150]
1149 #define bytecoded_symbol BASE[151]
1150 #define nativecoded_symbol BASE[152]
1151 #define gchook BASE[153]
1152 #define resources BASE[154]
1153 #define callstack BASE[155]
1154 #define procstack BASE[156]
1155 #define procmem BASE[157]
1156 #ifdef COMMON
1157 #define keyword_package BASE[170]
1158 #define all_packages BASE[171]
1159 #define package_symbol BASE[172]
1160 #define internal_symbol BASE[173]
1161 #define external_symbol BASE[174]
1162 #define inherited_symbol BASE[175]
1163 #define key_key BASE[176]
1164 #define allow_other_keys BASE[177]
1165 #define aux_key BASE[178]
1166 #define format_symbol BASE[179]
1167 #define expand_def_symbol BASE[180]
1168 #define allow_key_key BASE[181]
1169 #endif
1170 #define declare_symbol BASE[182]
1171 #define special_symbol BASE[183]
1172 extern Lisp_Object user_base_0, user_base_1, user_base_2;
1173 extern Lisp_Object user_base_3, user_base_4, user_base_5;
1174 extern Lisp_Object user_base_6, user_base_7, user_base_8;
1175 extern Lisp_Object user_base_9;
1176 #define work_0 BASE[200]
1177 #define work_1 BASE[201]
1178 #define mv_1 work_1
1179 #define mv_2 BASE[202]
1180 #define mv_3 BASE[203]
1181 #define work_50 BASE[250]
1182 #endif
1183 extern void copy_into_nilseg(int fg);
1184 extern void copy_out_of_nilseg(int fg);
1185 #define eq_hash_table_list BASE[50]
1186 #define equal_hash_table_list BASE[51]
1187 #define current_package_offset 52
1188 extern void rehash_this_table(Lisp_Object v);
1189 extern Lisp_Object eq_hash_tables, equal_hash_tables;
1190 extern Lisp_Object volatile savecodelimit;
1191 extern Lisp_Object * volatile savestacklimit;
1192 extern Lisp_Object volatile saveheaplimit;
1193 extern Lisp_Object volatile savevheaplimit;
1194 extern char *exit_charvec;
1195 extern intptr_t exit_reason;
1196 extern int procstackp;
1197 #ifdef DEBUG
1198 extern int trace_all;
1199 #endif
1200 extern int garbage_collection_permitted;
1201 #define MAX_INPUT_FILES 40
1202 #define MAX_SYMBOLS_TO_DEFINE 40
1203 #define MAX_FASL_PATHS 20
1204 extern char *files_to_read[MAX_INPUT_FILES],
1205 *symbols_to_define[MAX_SYMBOLS_TO_DEFINE],
1206 *fasl_paths[MAX_FASL_PATHS];
1207 extern int csl_argc;
1208 extern char **csl_argv;
1209 extern int fasl_output_file, output_directory;
1210 extern FILE *binary_read_file;
1211 extern int boffop;
1212 extern void packbyte(int c);
1213 #ifndef COMMON
1214 #ifdef HAVE_FWIN
1215 extern char **loadable_packages;
1216 extern char **switches;
1217 extern void review_switch_settings();
1218 #endif
1219 #endif
1220 #ifdef SOCKETS
1221 extern int sockets_ready;
1222 extern void flush_socket(void);
1223 #endif
1224 extern void report_file(const char *s);
1225 extern CSLbool undefine_this_one[MAX_SYMBOLS_TO_DEFINE];
1226 extern int errorset_min, errorset_max;
1227 extern int number_of_input_files,
1228 number_of_symbols_to_define,
1229 number_of_fasl_paths,
1230 init_flags;
1231 extern int native_code_tag;
1232 extern char *standard_directory;
1233 extern int gc_number;
1234 extern CSLbool gc_method_is_copying;
1235 extern int force_reclaim_method, reclaim_trap_count;
1236 #define INIT_QUIET 1
1237 #define INIT_VERBOSE 2
1238 #define INIT_EXPANDABLE 4
1239 #define Lispify_predicate(p) ((p) ? lisp_true : nil)
1240 extern int tty_count;
1241 extern FILE *spool_file;
1242 extern char spool_file_name[32];
1243 typedef struct Ihandle
1244 {
1245 FILE *f;
1246 long int o;
1247 long int n;
1248 uint32_t chk;
1249 int status;
1250 int nativedir;
1251 } Ihandle;
1252 extern int32_t compression_worth_while;
1253 #define CODESIZE 0x1000
1254 typedef struct entry_point1
1255 {
1256 one_args *p;
1257 char *s;
1258 } entry_point1;
1259 typedef struct entry_point2
1260 {
1261 two_args *p;
1262 char *s;
1263 } entry_point2;
1264 typedef struct entry_pointn
1265 {
1266 n_args *p;
1267 char *s;
1268 } entry_pointn;
1269 extern entry_point1 entries_table1[];
1270 extern entry_point2 entries_table2[];
1271 extern entry_pointn entries_tablen[];
1272 extern entry_pointn entries_table_io[];
1273 extern void set_up_entry_lookup(void);
1274 extern int32_t code_up_fn1(one_args *e);
1275 extern int32_t code_up_fn2(two_args *e);
1276 extern int32_t code_up_fnn(n_args *e);
1277 extern int32_t code_up_io(void *e);
1278 extern int doubled_execution;
1279 extern char *linker_type;
1280 extern char *compiler_command[], *import_data[],
1281 *config_header[], *csl_headers[];
1282 extern Lisp_Object encapsulate_pointer(void *);
1283 typedef void initfn(Lisp_Object *, Lisp_Object **, Lisp_Object * volatile *);
1284 extern int load_dynamic(char *objname, char *modname,
1285 Lisp_Object name, Lisp_Object fns);
1286 extern Lisp_Object Linstate_c_code(Lisp_Object nil,
1287 Lisp_Object name, Lisp_Object fns);
1288 #ifdef MEMORY_TRACE
1289 extern intptr_t memory_base, memory_size;
1290 extern unsigned char *memory_map;
1291 extern FILE *memory_file;
1292 extern void memory_comment(int n);
1293 #endif
1294 #define ARG_CUT_OFF 25
1295 extern void push_args(va_list a, int nargs);
1296 extern void push_args_1(va_list a, int nargs);
1297 extern void Iinit(void);
1298 extern void IreInit(void);
1299 extern void Icontext(Ihandle *);
1300 extern void Irestore_context(Ihandle);
1301 extern void Ilist(void);
1302 extern CSLbool open_output(char *s, int len);
1303 #define IOPEN_OUT 0
1304 #define IOPEN_UNCHECKED 1
1305 #define IOPEN_CHECKED 2
1306 extern CSLbool Iopen(char *name, int len, int dirn, char *expanded_name);
1307 extern CSLbool Iopen_from_stdin(void), Iopen_to_stdout(void);
1308 extern CSLbool IopenRoot(char *expanded_name, int hard, int sixtyfour);
1309 extern CSLbool Iwriterootp(char *expanded);
1310 extern CSLbool Iopen_help(int32_t offset);
1311 extern CSLbool Iopen_banner(int code);
1312 extern CSLbool Imodulep(char *name, int len, char *datestamp, int32_t *size,
1313 char *expanded_name);
1314 extern CSLbool Icopy(char *name, int len);
1315 extern CSLbool Idelete(char *name, int len);
1316 extern CSLbool IcloseInput(int check_checksum);
1317 extern CSLbool IcloseOutput(int write_checksum);
1318 extern CSLbool Ifinished(void);
1319 extern int Igetc(void);
1320 extern int32_t Iread(void *buff, int32_t size);
1321 extern CSLbool Iputc(int ch);
1322 extern CSLbool Iwrite(void *buff, int32_t size);
1323 extern long int Ioutsize(void);
1324 extern char *CSLtmpnam(char *suffix, int32_t suffixlen);
1325 extern int Cmkdir(char *s);
1326 extern char *look_in_lisp_variable(char *o, int prefix);
1327 extern void CSL_MD5_Init(void);
1328 extern void CSL_MD5_Update(unsigned char *data, int len);
1329 extern void CSL_MD5_Final(unsigned char *md);
1330 extern CSLbool CSL_MD5_busy;
1331 extern unsigned char *CSL_MD5(unsigned char *data, int n, unsigned char *md);
1332 extern void checksum(Lisp_Object a);
1333 extern unsigned char unpredictable[256];
1334 extern void inject_randomness(int n);
1335 extern void ensure_screen(void);
1336 extern int window_heading;
1337 extern void my_exit(int n);
1338 extern void *my_malloc(size_t n);
1339 extern clock_t base_time;
1340 extern double *clock_stack;
1341 extern void push_clock(void);
1342 extern double pop_clock(void);
1343 extern double consolidated_time[10], gc_time;
1344 extern CSLbool volatile already_in_gc, tick_on_gc_exit;
1345 extern CSLbool volatile interrupt_pending, tick_pending;
1346 extern int deal_with_tick(void);
1347 extern int current_fp_rep;
1348 #ifndef __cplusplus
1349 #ifdef USE_SIGALTSTACK
1350 extern sigjmp_buf *errorset_buffer;
1351 extern sigjmp_buf my_exit_buffer;
1352 #else
1353 extern jmp_buf *errorset_buffer;
1354 extern jmp_buf my_exit_buffer;
1355 #endif
1356 #endif
1357 extern char *errorset_msg;
1358 extern int errorset_code;
1359 extern void unwind_stack(Lisp_Object *, CSLbool findcatch);
1360 extern CSLbool segvtrap;
1361 extern CSLbool batch_flag;
1362 extern int escaped_printing;
1363 extern void MS_CDECL low_level_signal_handler(int code);
1364 extern int async_interrupt(int a);
1365 extern void MS_CDECL sigint_handler(int code);
1366 extern void record_get(Lisp_Object tag, CSLbool found);
1367 extern int primep(int32_t);
1368 extern void adjust_all(void);
1369 extern void set_up_functions(CSLbool restartp);
1370 extern void get_user_files_checksum(unsigned char *);
1371 extern Lisp_Object acons(Lisp_Object a, Lisp_Object b, Lisp_Object c);
1372 extern Lisp_Object ash(Lisp_Object a, Lisp_Object b);
1373 extern Lisp_Object bytestream_interpret(Lisp_Object code, Lisp_Object lit,
1374 Lisp_Object *entry_stack);
1375 extern CSLbool complex_stringp(Lisp_Object a);
1376 extern void freshline_trace(void);
1377 extern void freshline_debug(void);
1378 extern Lisp_Object cons(Lisp_Object a, Lisp_Object b);
1379 extern Lisp_Object cons_no_gc(Lisp_Object a, Lisp_Object b);
1380 extern Lisp_Object cons_gc_test(Lisp_Object a);
1381 extern void convert_fp_rep(void *p, int old_rep, int new_rep, int type);
1382 extern Lisp_Object Ceval(Lisp_Object u, Lisp_Object env);
1383 extern uint32_t Crand(void);
1384 extern Lisp_Object Cremainder(Lisp_Object a, Lisp_Object b);
1385 extern void Csrand(uint32_t a, uint32_t b);
1386 extern void discard(Lisp_Object a);
1387 extern CSLbool eql_fn(Lisp_Object a, Lisp_Object b);
1388 extern CSLbool cl_equal_fn(Lisp_Object a, Lisp_Object b);
1389 extern CSLbool equal_fn(Lisp_Object a, Lisp_Object b);
1390 #ifdef TRACED_EQUAL
1391 extern CSLbool traced_equal_fn(Lisp_Object a, Lisp_Object b,
1392 char *, int, int);
1393 #define equal_fn(a, b) traced_equal_fn(a, b, __FILE__, __LINE__, 0)
1394 extern void dump_equals();
1395 #endif
1396 extern CSLbool equalp(Lisp_Object a, Lisp_Object b);
1397 extern Lisp_Object apply(Lisp_Object fn, int nargs,
1398 Lisp_Object env, Lisp_Object fname);
1399 extern Lisp_Object apply_lambda(Lisp_Object def, int nargs,
1400 Lisp_Object env, Lisp_Object name);
1401 extern void deallocate_pages(void);
1402 extern void drop_heap_segments(void);
1403 extern Lisp_Object gcd(Lisp_Object a, Lisp_Object b);
1404 extern Lisp_Object get_pname(Lisp_Object a);
1405 #ifdef COMMON
1406 extern Lisp_Object get(Lisp_Object a, Lisp_Object b, Lisp_Object c);
1407 #else
1408 extern Lisp_Object get(Lisp_Object a, Lisp_Object b);
1409 #endif
1410 extern Lisp_Object getvector(int tag, int type, int32_t length);
1411 extern Lisp_Object getvector_init(int32_t n, Lisp_Object v);
1412 extern Lisp_Object getcodevector(int type, int32_t size);
1413 extern uint32_t hash_lisp_string(Lisp_Object s);
1414 extern void lose_C_def(Lisp_Object a);
1415 extern CSLbool geq2(Lisp_Object a, Lisp_Object b);
1416 extern CSLbool greaterp2(Lisp_Object a, Lisp_Object b);
1417 extern CSLbool lesseq2(Lisp_Object a, Lisp_Object b);
1418 extern CSLbool lessp2(Lisp_Object a, Lisp_Object b);
1419 extern Lisp_Object list2(Lisp_Object a, Lisp_Object b);
1420 extern Lisp_Object list2star(Lisp_Object a, Lisp_Object b, Lisp_Object c);
1421 extern Lisp_Object list3(Lisp_Object a, Lisp_Object b, Lisp_Object c);
1422 extern Lisp_Object list3star(Lisp_Object a, Lisp_Object b,
1423 Lisp_Object c, Lisp_Object d);
1424 extern Lisp_Object list4(Lisp_Object a, Lisp_Object b,
1425 Lisp_Object c, Lisp_Object d);
1426 extern Lisp_Object lognot(Lisp_Object a);
1427 extern Lisp_Object macroexpand(Lisp_Object form, Lisp_Object env);
1428 extern Lisp_Object make_one_word_bignum(int32_t n);
1429 extern Lisp_Object make_package(Lisp_Object name);
1430 extern Lisp_Object make_string(const char *b);
1431 extern Lisp_Object make_nstring(char *b, int32_t n);
1432 extern Lisp_Object make_undefined_symbol(char const *s);
1433 extern Lisp_Object make_symbol(char const *s, int restartp,
1434 one_args *f1, two_args *f2, n_args *fn);
1435 extern void MS_CDECL stdout_printf(char *fmt, ...);
1436 extern void MS_CDECL term_printf(char *fmt, ...);
1437 extern void MS_CDECL err_printf(char *fmt, ...);
1438 extern void MS_CDECL debug_printf(char *fmt, ...);
1439 extern void MS_CDECL trace_printf(char *fmt, ...);
1440 extern char *my_getenv(char *name);
1441 extern Lisp_Object ncons(Lisp_Object a);
1442 extern Lisp_Object ndelete(Lisp_Object a, Lisp_Object b);
1443 extern Lisp_Object negate(Lisp_Object a);
1444 extern Lisp_Object nreverse(Lisp_Object a);
1445 extern FILE *open_file(char *filename, char *original_name,
1446 size_t n, char *dirn, FILE *old_file);
1447 extern Lisp_Object plus2(Lisp_Object a, Lisp_Object b);
1448 extern void preserve(char *msg, int len);
1449 extern void preserve_native_code(void);
1450 extern void relocate_native_function(unsigned char *bps);
1451 extern Lisp_Object prin(Lisp_Object u);
1452 extern char *get_string_data(Lisp_Object a, char *why, int32_t *len);
1453 extern void prin_to_stdout(Lisp_Object u);
1454 extern void prin_to_terminal(Lisp_Object u);
1455 extern void prin_to_debug(Lisp_Object u);
1456 extern void prin_to_query(Lisp_Object u);
1457 extern void prin_to_trace(Lisp_Object u);
1458 extern void prin_to_error(Lisp_Object u);
1459 extern void loop_print_stdout(Lisp_Object o);
1460 extern void loop_print_terminal(Lisp_Object o);
1461 extern void loop_print_debug(Lisp_Object o);
1462 extern void loop_print_query(Lisp_Object o);
1463 extern void loop_print_trace(Lisp_Object o);
1464 extern void loop_print_error(Lisp_Object o);
1465 extern void internal_prin(Lisp_Object u, int prefix);
1466 extern Lisp_Object princ(Lisp_Object u);
1467 extern Lisp_Object print(Lisp_Object u);
1468 extern Lisp_Object printc(Lisp_Object u);
1469 extern void print_bignum(Lisp_Object u, CSLbool blankp, int nobreak);
1470 extern void print_bighexoctbin(Lisp_Object u,
1471 int radix, int width, CSLbool blankp, int nobreak);
1472 extern Lisp_Object putprop(Lisp_Object a, Lisp_Object b,
1473 Lisp_Object c);
1474 extern Lisp_Object quot2(Lisp_Object a, Lisp_Object b);
1475 extern Lisp_Object rational(Lisp_Object a);
1476 extern void read_eval_print(int noisy);
1477 extern Lisp_Object reclaim(Lisp_Object value_to_return, char *why,
1478 int stg_class, intptr_t size);
1479 #ifdef DEBUG
1480 extern void validate_all(char *why, int line, char *file);
1481 extern int check_env(Lisp_Object env);
1482 #endif
1483 extern CSLbool do_not_kill_native_code;
1484 extern void set_fns(Lisp_Object sym, one_args *f1,
1485 two_args *f2, n_args *fn);
1486 extern void setup(int restartp, double storesize);
1487 extern Lisp_Object simplify_string(Lisp_Object s);
1488 extern CSLbool stringp(Lisp_Object a);
1489 extern Lisp_Object times2(Lisp_Object a, Lisp_Object b);
1490 extern int32_t thirty_two_bits(Lisp_Object a);
1491 #ifdef HAVE_INT64_T
1492 extern int64_t sixty_four_bits(Lisp_Object a);
1493 #endif
1494 #ifdef DEBUG
1495 extern void validate_string_fn(Lisp_Object a, char *f, int l);
1496 #define validate_string(a) validate_string_fn(a, __FILE__, __LINE__)
1497 #else
1498 #define validate_string(a)
1499 #endif
1500 #ifdef COMMON
1501 #define onevalue(r) (exit_count=1, (r))
1502 #define nvalues(r, n) (exit_count=(n), (r))
1503 #else
1504 #define onevalue(r) (r)
1505 #define nvalues(r, n) (r)
1506 #endif
1507 #ifdef COMMON
1508 #define eval(a, b) Ceval(a, b)
1509 #define voideval(a, b) Ceval(a, b)
1510 #else
1511 #define eval(a, b) \
1512 (is_cons(a) ? Ceval(a, b) : \
1513 is_symbol(a) ? (qvalue(a) == unset_var ? error(1, err_unset_var, a) : \
1514 onevalue(qvalue(a))) : \
1515 onevalue(a))
1516 #define voideval(a, b) \
1517 if (is_cons(a)) Ceval(a, b)
1518 #endif
1519 #define equal(a, b) \
1520 ((a) == (b) || \
1521 (((((a) ^ (b)) & TAG_BITS) == 0) && \
1522 ((unsigned)(((a) & TAG_BITS) - 1) > 3) && \
1523 equal_fn(a, b)))
1524 #define cl_equal(a, b) \
1525 ((a) == (b) || \
1526 (((((a) ^ (b)) & TAG_BITS) == 0) && \
1527 ((unsigned)(((a) & TAG_BITS) - 1) > 3) && \
1528 cl_equal_fn(a, b)))
1529 #define eql(a, b) \
1530 ((a) == (b) || \
1531 (((((a) ^ (b)) & TAG_BITS) == 0) && \
1532 ((unsigned)(((a) & TAG_BITS) - 1) > 3) && \
1533 eql_fn(a, b)))
1534 #ifndef IMULTIPLY
1535 extern uint32_t Imultiply(uint32_t *rlow, uint32_t a,
1536 uint32_t b, uint32_t c);
1537 #endif
1538 #ifndef IDIVIDE
1539 extern uint32_t Idivide(uint32_t *qp, uint32_t a,
1540 uint32_t b, uint32_t c);
1541 extern uint32_t Idiv10_9(uint32_t *qp, uint32_t a, uint32_t b);
1542 #endif
1543 #define argcheck(var, n, msg) if ((var)!=(n)) return aerror(msg);
1544 extern n_args *zero_arg_functions[];
1545 extern one_args *one_arg_functions[];
1546 extern two_args *two_arg_functions[];
1547 extern n_args *three_arg_functions[];
1548 extern void *useful_functions[];
1549 extern char *address_of_var(int n);
1550 typedef struct setup_type
1551 {
1552 char *name;
1553 one_args *one;
1554 two_args *two;
1555 n_args *n;
1556 } setup_type;
1557 typedef struct setup_type_1
1558 {
1559 char *name;
1560 one_args *one;
1561 two_args *two;
1562 n_args *n;
1563 uint32_t c1;
1564 uint32_t c2;
1565 } setup_type_1;
1566 extern setup_type const
1567 arith06_setup[], arith08_setup[], arith10_setup[], arith12_setup[],
1568 char_setup[], eval1_setup[], eval2_setup[], eval3_setup[],
1569 funcs1_setup[], funcs2_setup[], funcs3_setup[], print_setup[],
1570 read_setup[], mpi_setup[];
1571 extern setup_type const
1572 u01_setup[], u02_setup[], u03_setup[], u04_setup[],
1573 u05_setup[], u06_setup[], u07_setup[], u08_setup[], u09_setup[],
1574 u10_setup[], u11_setup[], u12_setup[], u13_setup[], u14_setup[],
1575 u15_setup[], u16_setup[], u17_setup[], u18_setup[], u19_setup[],
1576 u20_setup[], u21_setup[], u22_setup[], u23_setup[], u24_setup[],
1577 u25_setup[], u26_setup[], u27_setup[], u28_setup[], u29_setup[],
1578 u30_setup[], u31_setup[], u32_setup[], u33_setup[], u34_setup[],
1579 u35_setup[], u36_setup[], u37_setup[], u38_setup[], u39_setup[],
1580 u40_setup[], u41_setup[], u42_setup[], u43_setup[], u44_setup[],
1581 u45_setup[], u46_setup[], u47_setup[], u48_setup[], u49_setup[],
1582 u50_setup[], u51_setup[], u52_setup[], u53_setup[], u54_setup[],
1583 u55_setup[], u56_setup[], u57_setup[], u58_setup[], u59_setup[],
1584 u60_setup[];
1585 extern setup_type const *setup_tables[];
1586 #ifdef NAG
1587 extern setup_type const nag_setup[], asp_setup[];
1588 extern setup_type const socket_setup[], xdr_setup[], grep_setup[];
1589 extern setup_type const gr_setup[], axfns_setup[];
1590 #endif
1591 #ifdef OPENMATH
1592 extern setup_type const om_setup[];
1593 extern setup_type const om_parse_setup[];
1594 #endif
1595 extern char *find_image_directory(int argc, char *argv[]);
1596 extern char program_name[64];
1597 extern Lisp_Object declare_fn(Lisp_Object args, Lisp_Object env);
1598 extern Lisp_Object function_fn(Lisp_Object args, Lisp_Object env);
1599 extern Lisp_Object let_fn_1(Lisp_Object bvl, Lisp_Object body,
1600 Lisp_Object env, int compilerp);
1601 extern Lisp_Object mv_call_fn(Lisp_Object args, Lisp_Object env);
1602 extern Lisp_Object progn_fn(Lisp_Object args, Lisp_Object env);
1603 extern Lisp_Object quote_fn(Lisp_Object args, Lisp_Object env);
1604 extern Lisp_Object tagbody_fn(Lisp_Object args, Lisp_Object env);
1605 extern Lisp_Object resource_exceeded();
1606 extern int64_t time_base, space_base, io_base, errors_base;
1607 extern int64_t time_now, space_now, io_now, errors_now;
1608 extern int64_t time_limit, space_limit, io_limit, errors_limit;
1609 extern CSLbool symbol_protect_flag, warn_about_protected_symbols;
1610 #ifdef JIT
1611 extern char *Jcompile(Lisp_Object def, Lisp_Object env);
1612 extern unsigned long jit_size;
1613 #define JIT_INIT_SIZE 8192
1614 #endif
1615 #ifdef __cplusplus
1616 }
1617 #endif
1618 #endif
1619 #ifndef header_arith_h
1620 #define header_arith_h 1
1621 #define TWO_32 4294967296.0
1622 #define TWO_31 2147483648.0
1623 #define TWO_24 16777216.0
1624 #define TWO_22 4194304.0
1625 #define TWO_21 2097152.0
1626 #define TWO_20 1048576.0
1627 #define M2_31_1 -2147483649.0
1628 #define _pi 3.14159265358979323846
1629 #define _half_pi 1.57079632679489661923
1630 #define boole_clr 0
1631 #define boole_and 1
1632 #define boole_andc2 2
1633 #define boole_1 3
1634 #define boole_andc1 4
1635 #define boole_2 5
1636 #define boole_xor 6
1637 #define boole_ior 7
1638 #define boole_nor 8
1639 #define boole_eqv 9
1640 #define boole_c2 10
1641 #define boole_orc2 11
1642 #define boole_c1 12
1643 #define boole_orc1 13
1644 #define boole_nand 14
1645 #define boole_set 15
1646 #define top_bit_set(n) (((int32_t)(n)) < 0)
1647 #define top_bit(n) (((uint32_t)(n)) >> 31)
1648 #define set_top_bit(n) ((n) | (uint32_t)0x80000000)
1649 #define clear_top_bit(n) ((n) & 0x7fffffff)
1650 #define signed_overflow(n) top_bit_set((n) ^ (((int32_t)(n))<<1))
1651 #ifdef HAVE_UINT64_T
1652 #define IMULTIPLY 1
1653 #define Dmultiply(hi, lo, a, b, c) \
1654 do { uint64_t r64 = (uint64_t)(a) * (uint64_t)(b) + \
1655 (uint32_t)(c); \
1656 (lo) = 0x7fffffffu & (uint32_t)r64; \
1657 (hi) = (uint32_t)(r64 >> 31); } while (0)
1658 #define IDIVIDE 1
1659 #define Ddivide(r, q, a, b, c) \
1660 do { uint64_t r64 = (((uint64_t)(a)) << 31) | (uint64_t)(b); \
1661 uint64_t c64 = (uint64_t)(uint32_t)(c); \
1662 q = (uint32_t)(r64 / c64); \
1663 r = (uint32_t)(r64 % c64); } while (0)
1664 #define Ddiv10_9(r, q, a, b) Ddivide(r, q, a, b, 1000000000u)
1665 #else
1666 #define Dmultiply(hi, lo, a, b, c) ((hi) = Imultiply(&(lo), (a), (b), (c)))
1667 #define Ddivide(r, q, a, b, c) ((r) = Idivide(&(q), (a), (b), (c)))
1668 #define Ddiv10_9(r, q, a, b) ((r) = Idiv10_9(&(q), (a), (b)))
1669 #endif
1670 #define fix_mask (-0x08000000)
1671 #define fixnum_minusp(a) ((int32_t)(a) < 0)
1672 #define bignum_minusp(a) \
1673 ((int32_t)bignum_digits(a)[((bignum_length(a)-CELL)/4)-1]<0)
1674 extern Lisp_Object negateb(Lisp_Object);
1675 extern Lisp_Object copyb(Lisp_Object);
1676 extern Lisp_Object negate(Lisp_Object);
1677 extern Lisp_Object plus2(Lisp_Object a, Lisp_Object b);
1678 extern Lisp_Object difference2(Lisp_Object a, Lisp_Object b);
1679 extern Lisp_Object times2(Lisp_Object a, Lisp_Object b);
1680 extern Lisp_Object quot2(Lisp_Object a, Lisp_Object b);
1681 extern Lisp_Object CLquot2(Lisp_Object a, Lisp_Object b);
1682 extern Lisp_Object quotbn(Lisp_Object a, int32_t n);
1683 extern Lisp_Object quotbn1(Lisp_Object a, int32_t n);
1684 extern Lisp_Object quotbb(Lisp_Object a, Lisp_Object b);
1685 extern Lisp_Object Cremainder(Lisp_Object a, Lisp_Object b);
1686 extern Lisp_Object rembi(Lisp_Object a, Lisp_Object b);
1687 extern Lisp_Object rembb(Lisp_Object a, Lisp_Object b);
1688 extern Lisp_Object shrink_bignum(Lisp_Object a, int32_t lena);
1689 extern Lisp_Object modulus(Lisp_Object a, Lisp_Object b);
1690 extern Lisp_Object rational(Lisp_Object a);
1691 extern Lisp_Object rationalize(Lisp_Object a);
1692 extern Lisp_Object lcm(Lisp_Object a, Lisp_Object b);
1693 extern Lisp_Object lengthen_by_one_bit(Lisp_Object a, int32_t msd);
1694 extern CSLbool numeq2(Lisp_Object a, Lisp_Object b);
1695 extern CSLbool zerop(Lisp_Object a);
1696 extern CSLbool onep(Lisp_Object a);
1697 extern CSLbool minusp(Lisp_Object a);
1698 extern CSLbool plusp(Lisp_Object a);
1699 extern CSLbool lesspbd(Lisp_Object a, double b);
1700 extern CSLbool lessprd(Lisp_Object a, double b);
1701 extern CSLbool lesspdb(double a, Lisp_Object b);
1702 extern CSLbool lesspdr(double a, Lisp_Object b);
1703 extern Lisp_Object make_one_word_bignum(int32_t n);
1704 extern Lisp_Object make_two_word_bignum(int32_t a, uint32_t b);
1705 extern Lisp_Object make_n_word_bignum(int32_t a1, uint32_t a2,
1706 uint32_t a3, int32_t n);
1707 extern Lisp_Object make_sfloat(double d);
1708 extern double float_of_integer(Lisp_Object a);
1709 extern Lisp_Object add1(Lisp_Object p);
1710 extern Lisp_Object sub1(Lisp_Object p);
1711 extern Lisp_Object integerp(Lisp_Object p);
1712 extern double float_of_number(Lisp_Object a);
1713 extern Lisp_Object make_boxfloat(double a, int32_t type);
1714 extern Lisp_Object make_complex(Lisp_Object r, Lisp_Object i);
1715 extern Lisp_Object make_ratio(Lisp_Object p, Lisp_Object q);
1716 extern Lisp_Object ash(Lisp_Object a, Lisp_Object b);
1717 extern Lisp_Object lognot(Lisp_Object a);
1718 extern Lisp_Object logior2(Lisp_Object a, Lisp_Object b);
1719 extern Lisp_Object logxor2(Lisp_Object a, Lisp_Object b);
1720 extern Lisp_Object logand2(Lisp_Object a, Lisp_Object b);
1721 extern Lisp_Object logeqv2(Lisp_Object a, Lisp_Object b);
1722 extern Lisp_Object rationalf(double d);
1723 extern int _reduced_exp(double, double *);
1724 extern CSLbool lesspbi(Lisp_Object a, Lisp_Object b);
1725 extern CSLbool lesspib(Lisp_Object a, Lisp_Object b);
1726 #ifdef COMMON
1727 typedef struct Complex
1728 {
1729 double real;
1730 double imag;
1731 } Complex;
1732 extern Complex MS_CDECL Cln(Complex a);
1733 extern Complex MS_CDECL Ccos(Complex a);
1734 extern Complex MS_CDECL Cexp(Complex a);
1735 extern Complex MS_CDECL Cpow(Complex a, Complex b);
1736 extern double MS_CDECL Cabs(Complex a);
1737 #endif
1738 #endif
1739 #ifndef header_entries_h
1740 #define header_entries_h 1
1741 #ifdef __cplusplus
1742 extern "C" {
1743 #endif
1744 extern Lisp_Object MS_CDECL Lbatchp(Lisp_Object env, int nargs, ...);
1745 extern Lisp_Object MS_CDECL bytecounts(Lisp_Object nil, int nargs, ...);
1746 extern Lisp_Object MS_CDECL Ldate(Lisp_Object env, int nargs, ...);
1747 extern Lisp_Object MS_CDECL Ldatestamp(Lisp_Object nil, int nargs, ...);
1748 extern Lisp_Object MS_CDECL Leject(Lisp_Object env, int nargs, ...);
1749 extern Lisp_Object MS_CDECL Lerror(Lisp_Object env, int nargs, ...);
1750 extern Lisp_Object MS_CDECL Lerror0(Lisp_Object env, int nargs, ...);
1751 extern Lisp_Object MS_CDECL Lflush(Lisp_Object nil, int nargs, ...);
1752 extern Lisp_Object MS_CDECL Lgc0(Lisp_Object nil, int nargs, ...);
1753 extern Lisp_Object MS_CDECL Lgctime(Lisp_Object env, int nargs, ...);
1754 extern Lisp_Object MS_CDECL Lgensym(Lisp_Object env, int nargs, ...);
1755 extern Lisp_Object MS_CDECL Llist_modules(Lisp_Object env, int nargs, ...);
1756 extern Lisp_Object MS_CDECL Llibrary_members0(Lisp_Object env, int nargs, ...);
1757 extern Lisp_Object MS_CDECL Llposn(Lisp_Object env, int nargs, ...);
1758 extern Lisp_Object MS_CDECL Lmapstore0(Lisp_Object env, int nargs, ...);
1759 extern Lisp_Object MS_CDECL Lnext_random(Lisp_Object env, int nargs, ...);
1760 extern Lisp_Object MS_CDECL Lposn(Lisp_Object env, int nargs, ...);
1761 extern Lisp_Object MS_CDECL Lread(Lisp_Object env, int nargs, ...);
1762 extern Lisp_Object MS_CDECL Lreadch(Lisp_Object env, int nargs, ...);
1763 extern Lisp_Object MS_CDECL Lrtell(Lisp_Object nil, int nargs, ...);
1764 extern Lisp_Object MS_CDECL Lterpri(Lisp_Object env, int nargs, ...);
1765 extern Lisp_Object MS_CDECL Ltime(Lisp_Object env, int nargs, ...);
1766 extern Lisp_Object MS_CDECL Ltmpnam(Lisp_Object nil, int nargs, ...);
1767 extern Lisp_Object MS_CDECL Ltyi(Lisp_Object env, int nargs, ...);
1768 extern Lisp_Object autoload1(Lisp_Object env, Lisp_Object a1);
1769 extern Lisp_Object bytecoded1(Lisp_Object env, Lisp_Object a);
1770 extern Lisp_Object byteopt1(Lisp_Object def, Lisp_Object a);
1771 extern Lisp_Object byteoptrest1(Lisp_Object def, Lisp_Object a);
1772 extern Lisp_Object double_bytecoded1(Lisp_Object env, Lisp_Object a);
1773 extern Lisp_Object double_byteopt1(Lisp_Object def, Lisp_Object a);
1774 extern Lisp_Object double_byteoptrest1(Lisp_Object def, Lisp_Object a);
1775 extern Lisp_Object double_funarged1(Lisp_Object env, Lisp_Object a1);
1776 extern Lisp_Object double_hardopt1(Lisp_Object def, Lisp_Object a);
1777 extern Lisp_Object double_hardoptrest1(Lisp_Object def, Lisp_Object a);
1778 extern Lisp_Object double_interpreted1(Lisp_Object env, Lisp_Object a1);
1779 extern Lisp_Object funarged1(Lisp_Object env, Lisp_Object a1);
1780 extern Lisp_Object tracefunarged1(Lisp_Object env, Lisp_Object a1);
1781 extern Lisp_Object hardopt1(Lisp_Object def, Lisp_Object a);
1782 extern Lisp_Object hardoptrest1(Lisp_Object def, Lisp_Object a);
1783 extern Lisp_Object interpreted1(Lisp_Object env, Lisp_Object a1);
1784 extern Lisp_Object tracebytecoded1(Lisp_Object env, Lisp_Object a);
1785 extern Lisp_Object jitcompileme1(Lisp_Object env, Lisp_Object a);
1786 extern Lisp_Object tracebyteopt1(Lisp_Object def, Lisp_Object a);
1787 extern Lisp_Object tracebyteoptrest1(Lisp_Object def, Lisp_Object a);
1788 extern Lisp_Object tracebytecoded1(Lisp_Object env, Lisp_Object a);
1789 extern Lisp_Object traceinterpreted1(Lisp_Object env, Lisp_Object a1);
1790 extern Lisp_Object tracehardopt1(Lisp_Object def, Lisp_Object a);
1791 extern Lisp_Object tracehardoptrest1(Lisp_Object def, Lisp_Object a);
1792 extern Lisp_Object undefined1(Lisp_Object env, Lisp_Object a1);
1793 extern Lisp_Object f1_as_0(Lisp_Object env, Lisp_Object a);
1794 extern Lisp_Object f1_as_1(Lisp_Object env, Lisp_Object a);
1795 #ifdef CJAVA
1796 extern Lisp_Object java1(Lisp_Object env, Lisp_Object a);
1797 #endif
1798 extern Lisp_Object Labsval(Lisp_Object env, Lisp_Object a);
1799 extern Lisp_Object Ladd1(Lisp_Object env, Lisp_Object a);
1800 extern Lisp_Object Lalpha_char_p(Lisp_Object env, Lisp_Object a);
1801 extern Lisp_Object Lapply0(Lisp_Object env, Lisp_Object a);
1802 extern Lisp_Object Lapply_1(Lisp_Object env, Lisp_Object fn);
1803 extern Lisp_Object Latan(Lisp_Object env, Lisp_Object a);
1804 extern Lisp_Object Latom(Lisp_Object env, Lisp_Object a);
1805 extern Lisp_Object Lbanner(Lisp_Object env, Lisp_Object a);
1806 extern Lisp_Object Lboundp(Lisp_Object env, Lisp_Object a);
1807 extern Lisp_Object Lbpsp(Lisp_Object nil, Lisp_Object a);
1808 extern Lisp_Object Lbpsupbv(Lisp_Object nil, Lisp_Object v);
1809 extern Lisp_Object Lcaaaar(Lisp_Object env, Lisp_Object a);
1810 extern Lisp_Object Lcaaadr(Lisp_Object env, Lisp_Object a);
1811 extern Lisp_Object Lcaaar(Lisp_Object env, Lisp_Object a);
1812 extern Lisp_Object Lcaadar(Lisp_Object env, Lisp_Object a);
1813 extern Lisp_Object Lcaaddr(Lisp_Object env, Lisp_Object a);
1814 extern Lisp_Object Lcaadr(Lisp_Object env, Lisp_Object a);
1815 extern Lisp_Object Lcaar(Lisp_Object env, Lisp_Object a);
1816 extern Lisp_Object Lcaar(Lisp_Object env, Lisp_Object a);
1817 extern Lisp_Object Lcadaar(Lisp_Object env, Lisp_Object a);
1818 extern Lisp_Object Lcadadr(Lisp_Object env, Lisp_Object a);
1819 extern Lisp_Object Lcadar(Lisp_Object env, Lisp_Object a);
1820 extern Lisp_Object Lcaddar(Lisp_Object env, Lisp_Object a);
1821 extern Lisp_Object Lcadddr(Lisp_Object env, Lisp_Object a);
1822 extern Lisp_Object Lcaddr(Lisp_Object env, Lisp_Object a);
1823 extern Lisp_Object Lcadr(Lisp_Object env, Lisp_Object a);
1824 extern Lisp_Object Lcadr(Lisp_Object env, Lisp_Object a);
1825 extern Lisp_Object Lcar(Lisp_Object env, Lisp_Object a);
1826 extern Lisp_Object Lcar(Lisp_Object env, Lisp_Object a);
1827 extern Lisp_Object Lcdaaar(Lisp_Object env, Lisp_Object a);
1828 extern Lisp_Object Lcdaadr(Lisp_Object env, Lisp_Object a);
1829 extern Lisp_Object Lcdaar(Lisp_Object env, Lisp_Object a);
1830 extern Lisp_Object Lcdadar(Lisp_Object env, Lisp_Object a);
1831 extern Lisp_Object Lcdaddr(Lisp_Object env, Lisp_Object a);
1832 extern Lisp_Object Lcdadr(Lisp_Object env, Lisp_Object a);
1833 extern Lisp_Object Lcdar(Lisp_Object env, Lisp_Object a);
1834 extern Lisp_Object Lcdar(Lisp_Object env, Lisp_Object a);
1835 extern Lisp_Object Lcddaar(Lisp_Object env, Lisp_Object a);
1836 extern Lisp_Object Lcddadr(Lisp_Object env, Lisp_Object a);
1837 extern Lisp_Object Lcddar(Lisp_Object env, Lisp_Object a);
1838 extern Lisp_Object Lcdddar(Lisp_Object env, Lisp_Object a);
1839 extern Lisp_Object Lcddddr(Lisp_Object env, Lisp_Object a);
1840 extern Lisp_Object Lcdddr(Lisp_Object env, Lisp_Object a);
1841 extern Lisp_Object Lcddr(Lisp_Object env, Lisp_Object a);
1842 extern Lisp_Object Lcddr(Lisp_Object env, Lisp_Object a);
1843 extern Lisp_Object Lcdr(Lisp_Object env, Lisp_Object a);
1844 extern Lisp_Object Lcdr(Lisp_Object env, Lisp_Object a);
1845 extern Lisp_Object Lchar_code(Lisp_Object env, Lisp_Object a);
1846 extern Lisp_Object Lclose(Lisp_Object env, Lisp_Object a);
1847 extern Lisp_Object Lcodep(Lisp_Object env, Lisp_Object a);
1848 extern Lisp_Object Lcompress(Lisp_Object env, Lisp_Object a);
1849 extern Lisp_Object Lconsp(Lisp_Object env, Lisp_Object a);
1850 extern Lisp_Object Lconstantp(Lisp_Object env, Lisp_Object a);
1851 extern Lisp_Object Lcopy_module(Lisp_Object env, Lisp_Object a);
1852 extern Lisp_Object Ldefine_in_module(Lisp_Object env, Lisp_Object a);
1853 extern Lisp_Object Ldelete_module(Lisp_Object env, Lisp_Object a);
1854 extern Lisp_Object Ldigitp(Lisp_Object env, Lisp_Object a);
1855 extern Lisp_Object Lendp(Lisp_Object env, Lisp_Object a);
1856 extern Lisp_Object Lerror1(Lisp_Object nil, Lisp_Object a1);
1857 extern Lisp_Object Lerrorset1(Lisp_Object nil, Lisp_Object form);
1858 extern Lisp_Object Leval(Lisp_Object env, Lisp_Object a);
1859 extern Lisp_Object Levenp(Lisp_Object env, Lisp_Object a);
1860 extern Lisp_Object Levlis(Lisp_Object env, Lisp_Object a);
1861 extern Lisp_Object Lexplode(Lisp_Object env, Lisp_Object a);
1862 extern Lisp_Object Lexplode2lc(Lisp_Object env, Lisp_Object a);
1863 extern Lisp_Object Lexplode2lcn(Lisp_Object nil, Lisp_Object a);
1864 extern Lisp_Object Lexplode2n(Lisp_Object env, Lisp_Object a);
1865 extern Lisp_Object Lexplodec(Lisp_Object env, Lisp_Object a);
1866 extern Lisp_Object Lexplodecn(Lisp_Object env, Lisp_Object a);
1867 extern Lisp_Object Lexplodehex(Lisp_Object nil, Lisp_Object a);
1868 extern Lisp_Object Lexploden(Lisp_Object env, Lisp_Object a);
1869 extern Lisp_Object Lexplodeoctal(Lisp_Object nil, Lisp_Object a);
1870 extern Lisp_Object Lfixp(Lisp_Object env, Lisp_Object a);
1871 extern Lisp_Object Lfloat(Lisp_Object env, Lisp_Object a);
1872 extern Lisp_Object Lfloatp(Lisp_Object env, Lisp_Object a);
1873 extern Lisp_Object Lfrexp(Lisp_Object nil, Lisp_Object a);
1874 extern Lisp_Object Lfuncall1(Lisp_Object env, Lisp_Object fn);
1875 extern Lisp_Object Lgc(Lisp_Object nil, Lisp_Object a);
1876 extern Lisp_Object Lgensym1(Lisp_Object env, Lisp_Object a);
1877 extern Lisp_Object Lgensym2(Lisp_Object env, Lisp_Object a);
1878 extern Lisp_Object Lgetd(Lisp_Object env, Lisp_Object a);
1879 extern Lisp_Object Lgetenv(Lisp_Object env, Lisp_Object a);
1880 extern Lisp_Object Lget_bps(Lisp_Object env, Lisp_Object a);
1881 extern Lisp_Object Lhelp(Lisp_Object nil, Lisp_Object a);
1882 extern Lisp_Object Liadd1(Lisp_Object env, Lisp_Object a);
1883 extern Lisp_Object Lidentity(Lisp_Object env, Lisp_Object a);
1884 extern Lisp_Object Liminus(Lisp_Object env, Lisp_Object a);
1885 extern Lisp_Object Liminusp(Lisp_Object env, Lisp_Object a);
1886 extern Lisp_Object Lindirect(Lisp_Object env, Lisp_Object a);
1887 extern Lisp_Object Lintegerp(Lisp_Object env, Lisp_Object a);
1888 extern Lisp_Object Lintern(Lisp_Object env, Lisp_Object a);
1889 extern Lisp_Object Lionep(Lisp_Object nil, Lisp_Object a);
1890 extern Lisp_Object Lisub1(Lisp_Object env, Lisp_Object a);
1891 extern Lisp_Object Lizerop(Lisp_Object nil, Lisp_Object a);
1892 extern Lisp_Object Llength(Lisp_Object env, Lisp_Object a);
1893 extern Lisp_Object Llengthc(Lisp_Object env, Lisp_Object a);
1894 extern Lisp_Object Llibrary_members(Lisp_Object nil, Lisp_Object a);
1895 extern Lisp_Object Llinelength(Lisp_Object env, Lisp_Object a);
1896 extern Lisp_Object Llist_to_string(Lisp_Object env, Lisp_Object a);
1897 extern Lisp_Object Llist_to_vector(Lisp_Object env, Lisp_Object a);
1898 extern Lisp_Object Lload_module(Lisp_Object env, Lisp_Object a);
1899 extern Lisp_Object Lload_source(Lisp_Object env, Lisp_Object a);
1900 extern Lisp_Object Llognot(Lisp_Object env, Lisp_Object a);
1901 extern Lisp_Object Llog_1(Lisp_Object nil, Lisp_Object a);
1902 extern Lisp_Object Llsd(Lisp_Object env, Lisp_Object a);
1903 extern Lisp_Object Lmacroexpand(Lisp_Object env, Lisp_Object a);
1904 extern Lisp_Object Lmacroexpand_1(Lisp_Object env, Lisp_Object a);
1905 extern Lisp_Object Lmacro_function(Lisp_Object env, Lisp_Object a);
1906 extern Lisp_Object Lmake_global(Lisp_Object env, Lisp_Object a);
1907 extern Lisp_Object Lmake_special(Lisp_Object env, Lisp_Object a);
1908 extern Lisp_Object Lmapstore(Lisp_Object env, Lisp_Object a);
1909 extern Lisp_Object Lmd5(Lisp_Object env, Lisp_Object a1);
1910 extern Lisp_Object Lmd60(Lisp_Object env, Lisp_Object a1);
1911 extern Lisp_Object Lminus(Lisp_Object env, Lisp_Object a);
1912 extern Lisp_Object Lminusp(Lisp_Object env, Lisp_Object a);
1913 extern Lisp_Object Lmkevect(Lisp_Object nil, Lisp_Object n);
1914 extern Lisp_Object Lmkquote(Lisp_Object env, Lisp_Object a);
1915 extern Lisp_Object Lmkvect(Lisp_Object env, Lisp_Object a);
1916 extern Lisp_Object Lmodular_minus(Lisp_Object env, Lisp_Object a);
1917 extern Lisp_Object Lmodular_number(Lisp_Object env, Lisp_Object a);
1918 extern Lisp_Object Lmodular_reciprocal(Lisp_Object env, Lisp_Object a);
1919 extern Lisp_Object Lmodule_exists(Lisp_Object env, Lisp_Object a);
1920 extern Lisp_Object Lmsd(Lisp_Object env, Lisp_Object a);
1921 extern Lisp_Object Lmv_list(Lisp_Object nil, Lisp_Object a);
1922 extern Lisp_Object Lncons(Lisp_Object env, Lisp_Object a);
1923 extern Lisp_Object Lnreverse(Lisp_Object env, Lisp_Object a);
1924 extern Lisp_Object Lnull(Lisp_Object env, Lisp_Object a);
1925 extern Lisp_Object Lnumberp(Lisp_Object env, Lisp_Object a);
1926 extern Lisp_Object Loddp(Lisp_Object env, Lisp_Object a);
1927 extern Lisp_Object Lonep(Lisp_Object env, Lisp_Object a);
1928 extern Lisp_Object Lpagelength(Lisp_Object env, Lisp_Object a);
1929 extern Lisp_Object Lplist(Lisp_Object env, Lisp_Object a);
1930 extern Lisp_Object Lplusp(Lisp_Object env, Lisp_Object a);
1931 extern Lisp_Object Lprin(Lisp_Object env, Lisp_Object a);
1932 extern Lisp_Object Lprin(Lisp_Object env, Lisp_Object a);
1933 extern Lisp_Object Lprin2a(Lisp_Object nil, Lisp_Object a);
1934 extern Lisp_Object Lprinc(Lisp_Object env, Lisp_Object a);
1935 extern Lisp_Object Lprinc(Lisp_Object env, Lisp_Object a);
1936 extern Lisp_Object Lprint(Lisp_Object env, Lisp_Object a);
1937 extern Lisp_Object Lprintc(Lisp_Object env, Lisp_Object a);
1938 extern Lisp_Object Lrandom(Lisp_Object env, Lisp_Object a);
1939 extern Lisp_Object Lrational(Lisp_Object env, Lisp_Object a);
1940 extern Lisp_Object Lrdf1(Lisp_Object env, Lisp_Object a);
1941 extern Lisp_Object Lrds(Lisp_Object env, Lisp_Object a);
1942 extern Lisp_Object Lremd(Lisp_Object env, Lisp_Object a);
1943 extern Lisp_Object Lreverse(Lisp_Object env, Lisp_Object a);
1944 extern Lisp_Object Lsetpchar(Lisp_Object env, Lisp_Object a);
1945 extern Lisp_Object Lset_small_modulus(Lisp_Object env, Lisp_Object a);
1946 extern Lisp_Object Lsmkvect(Lisp_Object env, Lisp_Object a);
1947 extern Lisp_Object Lspecial_char(Lisp_Object env, Lisp_Object a);
1948 extern Lisp_Object Lspecial_form_p(Lisp_Object env, Lisp_Object a);
1949 extern Lisp_Object Lspool(Lisp_Object env, Lisp_Object a);
1950 extern Lisp_Object Lstart_module(Lisp_Object env, Lisp_Object a);
1951 extern Lisp_Object Lstop(Lisp_Object env, Lisp_Object a);
1952 extern Lisp_Object Lstringp(Lisp_Object env, Lisp_Object a);
1953 extern Lisp_Object Lsub1(Lisp_Object env, Lisp_Object a);
1954 extern Lisp_Object Lsymbolp(Lisp_Object env, Lisp_Object a);
1955 extern Lisp_Object Lsymbol_argcount(Lisp_Object env, Lisp_Object a);
1956 extern Lisp_Object Lsymbol_argcode(Lisp_Object env, Lisp_Object a);
1957 extern Lisp_Object Lsymbol_env(Lisp_Object env, Lisp_Object a);
1958 extern Lisp_Object Lsymbol_function(Lisp_Object env, Lisp_Object a);
1959 extern Lisp_Object Lsymbol_globalp(Lisp_Object env, Lisp_Object a);
1960 extern Lisp_Object Lsymbol_name(Lisp_Object env, Lisp_Object a);
1961 extern Lisp_Object Lsymbol_restore_fns(Lisp_Object env, Lisp_Object a);
1962 extern Lisp_Object Lsymbol_specialp(Lisp_Object env, Lisp_Object a);
1963 extern Lisp_Object Lsymbol_value(Lisp_Object env, Lisp_Object a);
1964 extern Lisp_Object Lsystem(Lisp_Object env, Lisp_Object a);
1965 extern Lisp_Object Lthreevectorp(Lisp_Object env, Lisp_Object a);
1966 extern Lisp_Object Ltrace(Lisp_Object env, Lisp_Object a);
1967 extern Lisp_Object Ltruncate(Lisp_Object env, Lisp_Object a);
1968 extern Lisp_Object Lttab(Lisp_Object env, Lisp_Object a);
1969 extern Lisp_Object Ltyo(Lisp_Object env, Lisp_Object a);
1970 extern Lisp_Object Lunintern(Lisp_Object env, Lisp_Object a);
1971 extern Lisp_Object Lunmake_global(Lisp_Object env, Lisp_Object a);
1972 extern Lisp_Object Lunmake_special(Lisp_Object env, Lisp_Object a);
1973 extern Lisp_Object Luntrace(Lisp_Object env, Lisp_Object a);
1974 extern Lisp_Object Lupbv(Lisp_Object env, Lisp_Object a);
1975 extern Lisp_Object Lsimple_vectorp(Lisp_Object env, Lisp_Object a);
1976 extern Lisp_Object Lvectorp(Lisp_Object env, Lisp_Object a);
1977 extern Lisp_Object Lverbos(Lisp_Object env, Lisp_Object a);
1978 extern Lisp_Object Lwhitespace_char_p(Lisp_Object env, Lisp_Object a);
1979 extern Lisp_Object Lwritable_libraryp(Lisp_Object env, Lisp_Object a);
1980 extern Lisp_Object Lwrite_module(Lisp_Object env, Lisp_Object a);
1981 extern Lisp_Object Lwrs(Lisp_Object env, Lisp_Object a);
1982 extern Lisp_Object Lxtab(Lisp_Object env, Lisp_Object a);
1983 extern Lisp_Object Lxtab(Lisp_Object env, Lisp_Object a);
1984 extern Lisp_Object Lzerop(Lisp_Object env, Lisp_Object a);
1985 #ifdef COMMON
1986 extern Lisp_Object Lfind_symbol_1(Lisp_Object nil, Lisp_Object str);
1987 extern Lisp_Object Llistp(Lisp_Object env, Lisp_Object a);
1988 #endif
1989 extern Lisp_Object autoload2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
1990 extern Lisp_Object bytecoded2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
1991 extern Lisp_Object byteopt2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
1992 extern Lisp_Object byteoptrest2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
1993 extern Lisp_Object double_bytecoded2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
1994 extern Lisp_Object double_byteopt2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
1995 extern Lisp_Object double_byteoptrest2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
1996 extern Lisp_Object double_funarged2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
1997 extern Lisp_Object double_hardopt2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
1998 extern Lisp_Object double_hardoptrest2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
1999 extern Lisp_Object double_interpreted2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
2000 extern Lisp_Object funarged2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
2001 extern Lisp_Object tracefunarged2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
2002 extern Lisp_Object hardopt2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
2003 extern Lisp_Object hardoptrest2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
2004 extern Lisp_Object interpreted2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
2005 extern Lisp_Object tracebyteopt2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
2006 extern Lisp_Object tracebyteoptrest2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
2007 extern Lisp_Object tracebytecoded2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2008 extern Lisp_Object jitcompileme2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2009 extern Lisp_Object traceinterpreted2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
2010 extern Lisp_Object tracehardopt2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
2011 extern Lisp_Object tracehardoptrest2(Lisp_Object def, Lisp_Object a, Lisp_Object b);
2012 extern Lisp_Object undefined2(Lisp_Object env, Lisp_Object a1, Lisp_Object a2);
2013 extern Lisp_Object f2_as_0(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2014 extern Lisp_Object f2_as_1(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2015 extern Lisp_Object f2_as_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2016 #ifdef CJAVA
2017 extern Lisp_Object java2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2018 #endif
2019 extern Lisp_Object Lappend(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2020 extern Lisp_Object Lapply_2(Lisp_Object env, Lisp_Object fn, Lisp_Object a1);
2021 extern Lisp_Object Lapply1(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2022 extern Lisp_Object Lash(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2023 extern Lisp_Object Lash1(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2024 extern Lisp_Object Lassoc(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2025 extern Lisp_Object Latan2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2026 extern Lisp_Object Latan2d(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2027 extern Lisp_Object Latsoc(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2028 extern Lisp_Object Lbpsgetv(Lisp_Object nil, Lisp_Object v, Lisp_Object n);
2029 extern Lisp_Object Lcons(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2030 extern Lisp_Object Lcopy_native(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2031 extern Lisp_Object Ldeleq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2032 extern Lisp_Object Ldelete(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2033 extern Lisp_Object Ldifference2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2034 extern Lisp_Object Ldivide(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2035 extern Lisp_Object Lelt(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2036 extern Lisp_Object Leq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2037 extern Lisp_Object Leqcar(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2038 extern Lisp_Object Lequalcar(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2039 extern Lisp_Object Leql(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2040 extern Lisp_Object Leqn(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2041 extern Lisp_Object Lcl_equal(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2042 extern Lisp_Object Lequal(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2043 extern Lisp_Object Lerror2(Lisp_Object nil, Lisp_Object a1, Lisp_Object a2);
2044 extern Lisp_Object Lerrorset2(Lisp_Object nil, Lisp_Object form, Lisp_Object ffg1);
2045 extern Lisp_Object Lexpt(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2046 extern Lisp_Object Lflag(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2047 extern Lisp_Object Lflagp(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2048 extern Lisp_Object Lflagpcar(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2049 extern Lisp_Object Lfuncall2(Lisp_Object env, Lisp_Object fn, Lisp_Object a1);
2050 extern Lisp_Object Lgcd(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2051 extern Lisp_Object Lgeq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2052 extern Lisp_Object Lget(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2053 extern Lisp_Object Lget_hash_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2054 extern Lisp_Object Lgetv(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2055 extern Lisp_Object Lgreaterp(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2056 extern Lisp_Object Lhelp_2(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2057 extern Lisp_Object Lidifference(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2058 extern Lisp_Object Ligeq(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2059 extern Lisp_Object Ligreaterp(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2060 extern Lisp_Object Lileq(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2061 extern Lisp_Object Lilessp(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2062 extern Lisp_Object Limax(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2063 extern Lisp_Object Limin(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2064 extern Lisp_Object Linorm(Lisp_Object nil, Lisp_Object a, Lisp_Object k);
2065 extern Lisp_Object Linstate_c_code(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2066 extern Lisp_Object Lintersect(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2067 extern Lisp_Object Liplus2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2068 extern Lisp_Object Liquotient(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2069 extern Lisp_Object Liremainder(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2070 extern Lisp_Object Lirightshift(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2071 extern Lisp_Object Litimes2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2072 extern Lisp_Object Llcm(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2073 extern Lisp_Object Lleq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2074 extern Lisp_Object Llessp(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2075 extern Lisp_Object Llist2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2076 extern Lisp_Object Llog(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2077 extern Lisp_Object Llog_2(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2078 extern Lisp_Object Lmake_random_state(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2079 extern Lisp_Object Lmake_random_state(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2080 extern Lisp_Object Lmax2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2081 extern Lisp_Object Lmember(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2082 extern Lisp_Object Lmemq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2083 extern Lisp_Object Lmin2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2084 extern Lisp_Object Lmod(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2085 extern Lisp_Object Lmodular_difference(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2086 extern Lisp_Object Lmodular_expt(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2087 extern Lisp_Object Lmodular_plus(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2088 extern Lisp_Object Lmodular_quotient(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2089 extern Lisp_Object Lmodular_times(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2090 extern Lisp_Object Lnconc(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2091 extern Lisp_Object Lneq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2092 extern Lisp_Object Lnreverse2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2093 extern Lisp_Object Lorderp(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2094 extern Lisp_Object Lpair(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2095 extern Lisp_Object Lplus2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2096 extern Lisp_Object Lquotient(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2097 extern Lisp_Object Lrem(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2098 extern Lisp_Object Lremflag(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2099 extern Lisp_Object Lremprop(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2100 extern Lisp_Object Lresource_limit2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2101 extern Lisp_Object Lrplaca(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2102 extern Lisp_Object Lrplacd(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2103 extern Lisp_Object Lrseek(Lisp_Object nil, Lisp_Object a);
2104 extern Lisp_Object Lset(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2105 extern Lisp_Object Lset_help_file(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2106 extern Lisp_Object Lsgetv(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2107 extern Lisp_Object Lsmemq(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2108 extern Lisp_Object Lsubla(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2109 extern Lisp_Object Lsublis(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2110 extern Lisp_Object Lsymbol_protect(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2111 extern Lisp_Object Lsymbol_set_definition(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2112 extern Lisp_Object Lsymbol_set_env(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2113 extern Lisp_Object Ltimes2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2114 extern Lisp_Object Lunion(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2115 extern Lisp_Object Lwrite_help_module(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2116 extern Lisp_Object Lxcons(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2117 #ifdef COMMON
2118 extern Lisp_Object Laref2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2119 extern Lisp_Object Latan_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2120 extern Lisp_Object Lelt(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2121 extern Lisp_Object Lfloat_2(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2122 extern Lisp_Object Lintern_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2123 extern Lisp_Object Lmacroexpand_1_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2124 extern Lisp_Object Lmacroexpand_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2125 extern Lisp_Object Lrandom_2(Lisp_Object nil, Lisp_Object a, Lisp_Object b);
2126 extern Lisp_Object Ltruncate_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2127 extern Lisp_Object Lunintern_2(Lisp_Object env, Lisp_Object a, Lisp_Object b);
2128 #endif
2129 extern Lisp_Object MS_CDECL autoloadn(Lisp_Object env, int nargs, ...);
2130 extern Lisp_Object MS_CDECL bytecoded0(Lisp_Object env, int nargs, ...);
2131 extern Lisp_Object MS_CDECL bytecoded3(Lisp_Object env, int nargs, ...);
2132 extern Lisp_Object MS_CDECL bytecodedn(Lisp_Object env, int nargs, ...);
2133 extern Lisp_Object MS_CDECL byteoptn(Lisp_Object def, int nargs, ...);
2134 extern Lisp_Object MS_CDECL byteoptrestn(Lisp_Object def, int nargs, ...);
2135 extern Lisp_Object MS_CDECL double_bytecoded0(Lisp_Object env, int nargs, ...);
2136 extern Lisp_Object MS_CDECL double_bytecoded3(Lisp_Object env, int nargs, ...);
2137 extern Lisp_Object MS_CDECL double_bytecodedn(Lisp_Object env, int nargs, ...);
2138 extern Lisp_Object MS_CDECL double_byteoptn(Lisp_Object def, int nargs, ...);
2139 extern Lisp_Object MS_CDECL double_byteoptrestn(Lisp_Object def, int nargs, ...);
2140 extern Lisp_Object MS_CDECL double_funargedn(Lisp_Object env, int nargs, ...);
2141 extern Lisp_Object MS_CDECL double_hardoptn(Lisp_Object def, int nargs, ...);
2142 extern Lisp_Object MS_CDECL double_hardoptrestn(Lisp_Object def, int nargs, ...);
2143 extern Lisp_Object MS_CDECL double_interpretedn(Lisp_Object env, int nargs, ...);
2144 extern Lisp_Object MS_CDECL funargedn(Lisp_Object env, int nargs, ...);
2145 extern Lisp_Object MS_CDECL tracefunargedn(Lisp_Object env, int nargs, ...);
2146 extern Lisp_Object MS_CDECL hardoptn(Lisp_Object def, int nargs, ...);
2147 extern Lisp_Object MS_CDECL hardoptrestn(Lisp_Object def, int nargs, ...);
2148 extern Lisp_Object MS_CDECL interpretedn(Lisp_Object env, int nargs, ...);
2149 extern Lisp_Object MS_CDECL tracebyteoptn(Lisp_Object def, int nargs, ...);
2150 extern Lisp_Object MS_CDECL tracebyteoptrestn(Lisp_Object def, int nargs, ...);
2151 extern Lisp_Object MS_CDECL tracebytecoded0(Lisp_Object env, int nargs, ...);
2152 extern Lisp_Object MS_CDECL tracebytecoded3(Lisp_Object env, int nargs, ...);
2153 extern Lisp_Object MS_CDECL tracebytecodedn(Lisp_Object env, int nargs, ...);
2154 extern Lisp_Object MS_CDECL jitcompileme0(Lisp_Object env, int nargs, ...);
2155 extern Lisp_Object MS_CDECL jitcompileme3(Lisp_Object env, int nargs, ...);
2156 extern Lisp_Object MS_CDECL jitcompilemen(Lisp_Object env, int nargs, ...);
2157 extern Lisp_Object MS_CDECL traceinterpretedn(Lisp_Object env, int nargs, ...);
2158 extern Lisp_Object MS_CDECL tracehardoptn(Lisp_Object def, int nargs, ...);
2159 extern Lisp_Object MS_CDECL tracehardoptrestn(Lisp_Object def, int nargs, ...);
2160 extern Lisp_Object MS_CDECL undefinedn(Lisp_Object env, int nargs, ...);
2161 extern Lisp_Object MS_CDECL f0_as_0(Lisp_Object env, int nargs, ...);
2162 extern Lisp_Object MS_CDECL f3_as_0(Lisp_Object env, int nargs, ...);
2163 extern Lisp_Object MS_CDECL f3_as_1(Lisp_Object env, int nargs, ...);
2164 extern Lisp_Object MS_CDECL f3_as_2(Lisp_Object env, int nargs, ...);
2165 extern Lisp_Object MS_CDECL f3_as_3(Lisp_Object env, int nargs, ...);
2166 #ifdef CJAVA
2167 extern Lisp_Object MS_CDECL java0(Lisp_Object env, int nargs, ...);
2168 extern Lisp_Object MS_CDECL java3(Lisp_Object env, int nargs, ...);
2169 extern Lisp_Object MS_CDECL javan(Lisp_Object env, int nargs, ...);
2170 #endif
2171 extern Lisp_Object MS_CDECL Lacons(Lisp_Object env, int nargs, ...);
2172 extern Lisp_Object MS_CDECL Lapply_n(Lisp_Object env, int nargs, ...);
2173 extern Lisp_Object MS_CDECL Lapply2(Lisp_Object env, int nargs, ...);
2174 extern Lisp_Object MS_CDECL Lapply3(Lisp_Object env, int nargs, ...);
2175 extern Lisp_Object MS_CDECL Lbpsputv(Lisp_Object env, int nargs, ...);
2176 extern Lisp_Object MS_CDECL Lerrorset3(Lisp_Object nil, int nargs, ...);
2177 extern Lisp_Object MS_CDECL Lerrorsetn(Lisp_Object env, int nargs, ...);
2178 extern Lisp_Object MS_CDECL Lfuncalln(Lisp_Object env, int nargs, ...);
2179 extern Lisp_Object MS_CDECL Lhelp_n(Lisp_Object nil, int nargs, ...);
2180 extern Lisp_Object MS_CDECL Llist(Lisp_Object env, int nargs, ...);
2181 extern Lisp_Object MS_CDECL Llist2star(Lisp_Object env, int nargs, ...);
2182 extern Lisp_Object MS_CDECL Llist3(Lisp_Object env, int nargs, ...);
2183 extern Lisp_Object MS_CDECL Llogand(Lisp_Object env, int nargs, ...);
2184 extern Lisp_Object MS_CDECL Llogeqv(Lisp_Object env, int nargs, ...);
2185 extern Lisp_Object MS_CDECL Llogor(Lisp_Object env, int nargs, ...);
2186 extern Lisp_Object MS_CDECL Llogxor(Lisp_Object env, int nargs, ...);
2187 extern Lisp_Object MS_CDECL Lmax(Lisp_Object env, int nargs, ...);
2188 extern Lisp_Object MS_CDECL Lmin(Lisp_Object env, int nargs, ...);
2189 extern Lisp_Object MS_CDECL Lmkhash(Lisp_Object nil, int nargs, ...);
2190 extern Lisp_Object MS_CDECL Lput_hash(Lisp_Object env, int nargs, ...);
2191 extern Lisp_Object MS_CDECL Lputprop(Lisp_Object env, int nargs, ...);
2192 extern Lisp_Object MS_CDECL Lputv(Lisp_Object env, int nargs, ...);
2193 extern Lisp_Object MS_CDECL Lresource_limitn(Lisp_Object env, int nargs, ...);
2194 extern Lisp_Object MS_CDECL Lsputv(Lisp_Object env, int nargs, ...);
2195 extern Lisp_Object MS_CDECL Lsubst(Lisp_Object env, int nargs, ...);
2196 extern Lisp_Object MS_CDECL Lvalues(Lisp_Object env, int nargs, ...);
2197 #ifdef COMMON
2198 extern Lisp_Object MS_CDECL Lappend_n(Lisp_Object nil, int nargs, ...);
2199 extern Lisp_Object MS_CDECL Laref(Lisp_Object env, int nargs, ...);
2200 extern Lisp_Object MS_CDECL Laset(Lisp_Object env, int nargs, ...);
2201 extern Lisp_Object MS_CDECL Leqn_n(Lisp_Object nil, int nargs, ...);
2202 extern Lisp_Object MS_CDECL Lgcd_n(Lisp_Object env, int nargs, ...);
2203 extern Lisp_Object MS_CDECL Lgeq_n(Lisp_Object nil, int nargs, ...);
2204 extern Lisp_Object MS_CDECL Lget_3(Lisp_Object env, int nargs, ...);
2205 extern Lisp_Object MS_CDECL Lgreaterp_n(Lisp_Object nil, int nargs, ...);
2206 extern Lisp_Object MS_CDECL Llcm_n(Lisp_Object env, int nargs, ...);
2207 extern Lisp_Object MS_CDECL Lleq_n(Lisp_Object nil, int nargs, ...);
2208 extern Lisp_Object MS_CDECL Llessp_n(Lisp_Object nil, int nargs, ...);
2209 extern Lisp_Object MS_CDECL Lquotient_n(Lisp_Object nil, int nargs, ...);
2210 #endif
2211 #ifdef OPENMATH
2212 extern Lisp_Object MS_CDECL om_openFileDev(Lisp_Object env, int nargs, ...);
2213 extern Lisp_Object om_openStringDev(Lisp_Object nil, Lisp_Object lstr, Lisp_Object lenc);
2214 extern Lisp_Object om_closeDev(Lisp_Object env, Lisp_Object dev);
2215 extern Lisp_Object om_setDevEncoding(Lisp_Object nil, Lisp_Object ldev, Lisp_Object lenc);
2216 extern Lisp_Object om_makeConn(Lisp_Object nil, Lisp_Object ltimeout);
2217 extern Lisp_Object om_closeConn(Lisp_Object nil, Lisp_Object lconn);
2218 extern Lisp_Object om_getConnInDevice(Lisp_Object nil, Lisp_Object lconn);
2219 extern Lisp_Object om_getConnOutDevice(Lisp_Object nil, Lisp_Object lconn);
2220 extern Lisp_Object MS_CDECL om_connectTCP(Lisp_Object nil, int nargs, ...);
2221 extern Lisp_Object om_bindTCP(Lisp_Object nil, Lisp_Object lconn, Lisp_Object lport);
2222 extern Lisp_Object om_putApp(Lisp_Object nil, Lisp_Object ldev);
2223 extern Lisp_Object om_putEndApp(Lisp_Object nil, Lisp_Object ldev);
2224 extern Lisp_Object om_putAtp(Lisp_Object nil, Lisp_Object ldev);
2225 extern Lisp_Object om_putEndAtp(Lisp_Object nil, Lisp_Object ldev);
2226 extern Lisp_Object om_putAttr(Lisp_Object nil, Lisp_Object ldev);
2227 extern Lisp_Object om_putEndAttr(Lisp_Object nil, Lisp_Object ldev);
2228 extern Lisp_Object om_putBind(Lisp_Object nil, Lisp_Object ldev);
2229 extern Lisp_Object om_putEndBind(Lisp_Object nil, Lisp_Object ldev);
2230 extern Lisp_Object om_putBVar(Lisp_Object nil, Lisp_Object ldev);
2231 extern Lisp_Object om_putEndBVar(Lisp_Object nil, Lisp_Object ldev);
2232 extern Lisp_Object om_putError(Lisp_Object nil, Lisp_Object ldev);
2233 extern Lisp_Object om_putEndError(Lisp_Object nil, Lisp_Object ldev);
2234 extern Lisp_Object om_putObject(Lisp_Object nil, Lisp_Object ldev);
2235 extern Lisp_Object om_putEndObject(Lisp_Object nil, Lisp_Object ldev);
2236 extern Lisp_Object om_putInt(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
2237 extern Lisp_Object om_putFloat(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
2238 extern Lisp_Object om_putByteArray(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
2239 extern Lisp_Object om_putVar(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
2240 extern Lisp_Object om_putString(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
2241 extern Lisp_Object om_putSymbol(Lisp_Object nil, Lisp_Object ldev, Lisp_Object val);
2242 extern Lisp_Object MS_CDECL om_putSymbol2(Lisp_Object nil, int nargs, ...);
2243 extern Lisp_Object om_getApp(Lisp_Object nil, Lisp_Object ldev);
2244 extern Lisp_Object om_getEndApp(Lisp_Object nil, Lisp_Object ldev);
2245 extern Lisp_Object om_getAtp(Lisp_Object nil, Lisp_Object ldev);
2246 extern Lisp_Object om_getEndAtp(Lisp_Object nil, Lisp_Object ldev);
2247 extern Lisp_Object om_getAttr(Lisp_Object nil, Lisp_Object ldev);
2248 extern Lisp_Object om_getEndAttr(Lisp_Object nil, Lisp_Object ldev);
2249 extern Lisp_Object om_getBind(Lisp_Object nil, Lisp_Object ldev);
2250 extern Lisp_Object om_getEndBind(Lisp_Object nil, Lisp_Object ldev);
2251 extern Lisp_Object om_getBVar(Lisp_Object nil, Lisp_Object ldev);
2252 extern Lisp_Object om_getEndBVar(Lisp_Object nil, Lisp_Object ldev);
2253 extern Lisp_Object om_getError(Lisp_Object nil, Lisp_Object ldev);
2254 extern Lisp_Object om_getEndError(Lisp_Object nil, Lisp_Object ldev);
2255 extern Lisp_Object om_getObject(Lisp_Object nil, Lisp_Object ldev);
2256 extern Lisp_Object om_getEndObject(Lisp_Object nil, Lisp_Object ldev);
2257 extern Lisp_Object om_getInt(Lisp_Object nil, Lisp_Object ldev);
2258 extern Lisp_Object om_getFloat(Lisp_Object nil, Lisp_Object ldev);
2259 extern Lisp_Object om_getByteArray(Lisp_Object nil, Lisp_Object ldev);
2260 extern Lisp_Object om_getVar(Lisp_Object nil, Lisp_Object ldev);
2261 extern Lisp_Object om_getString(Lisp_Object nil, Lisp_Object ldev);
2262 extern Lisp_Object om_getSymbol(Lisp_Object nil, Lisp_Object ldev);
2263 extern Lisp_Object om_getType(Lisp_Object nil, Lisp_Object ldev);
2264 extern Lisp_Object om_stringToStringPtr(Lisp_Object nil, Lisp_Object lstr);
2265 extern Lisp_Object om_stringPtrToString(Lisp_Object nil, Lisp_Object lpstr);
2266 extern Lisp_Object om_read(Lisp_Object nil, Lisp_Object dev);
2267 extern Lisp_Object om_supportsCD(Lisp_Object nil, Lisp_Object lcd);
2268 extern Lisp_Object om_supportsSymbol(Lisp_Object nil, Lisp_Object lcd, Lisp_Object lsym);
2269 extern Lisp_Object MS_CDECL om_listCDs(Lisp_Object nil, int nargs, ...);
2270 extern Lisp_Object om_listSymbols(Lisp_Object nil, Lisp_Object lcd);
2271 extern Lisp_Object om_whichCDs(Lisp_Object nil, Lisp_Object lsym);
2272 #endif
2273 #ifdef __cplusplus
2274 }
2275 #endif
2276 #endif
2277
2278
2279 /* Code for fortexp1 */
2280
CC_fortexp1(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)2281 static Lisp_Object CC_fortexp1(Lisp_Object env,
2282 Lisp_Object v0000, Lisp_Object v0001)
2283 {
2284 Lisp_Object nil = C_nil;
2285 Lisp_Object v0159, v0160, v0161;
2286 Lisp_Object fn;
2287 CSL_IGNORE(nil);
2288 #ifdef DEBUG
2289 if (check_env(env)) return aerror("env for fortexp1");
2290 #endif
2291 if (stack >= stacklimit)
2292 {
2293 push2(v0001,v0000);
2294 env = reclaim(env, "stack", GC_STACK, 0);
2295 pop2(v0000,v0001);
2296 nil = C_nil;
2297 if (exception_pending()) return nil;
2298 }
2299 push(env);
2300 /* space for vars preserved across procedure calls */
2301 push5(nil, nil, nil, nil, nil);
2302 push4(nil, nil, nil, nil);
2303 /* copy arguments values to proper place */
2304 stack[-3] = v0001;
2305 stack[-1] = v0000;
2306 /* end of prologue */
2307
2308 v0162:
2309 v0159 = stack[-1];
2310 if (!consp(v0159)) goto v0163;
2311 v0159 = stack[-1];
2312 fn = elt(env, 29); /* listp */
2313 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2314 nil = C_nil;
2315 if (exception_pending()) goto v0164;
2316 env = stack[-9];
2317 if (v0159 == nil) goto v0165;
2318 v0159 = stack[-1];
2319 v0159 = Llength(nil, v0159);
2320 nil = C_nil;
2321 if (exception_pending()) goto v0164;
2322 env = stack[-9];
2323 v0159 = Lonep(nil, v0159);
2324 env = stack[-9];
2325 if (v0159 == nil) goto v0165;
2326 v0159 = stack[-1];
2327 {
2328 popv(10);
2329 fn = elt(env, 30); /* fortranname */
2330 return (*qfn1(fn))(qenv(fn), v0159);
2331 }
2332
2333 v0165:
2334 v0159 = stack[-1];
2335 v0159 = qcar(v0159);
2336 fn = elt(env, 31); /* optype */
2337 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2338 nil = C_nil;
2339 if (exception_pending()) goto v0164;
2340 env = stack[-9];
2341 if (v0159 == nil) goto v0166;
2342 v0159 = stack[-1];
2343 v0159 = qcar(v0159);
2344 fn = elt(env, 32); /* fortranprecedence */
2345 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2346 nil = C_nil;
2347 if (exception_pending()) goto v0164;
2348 env = stack[-9];
2349 stack[-4] = v0159;
2350 v0159 = stack[-1];
2351 v0159 = qcar(v0159);
2352 fn = elt(env, 33); /* fortranop */
2353 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2354 nil = C_nil;
2355 if (exception_pending()) goto v0164;
2356 env = stack[-9];
2357 stack[-2] = v0159;
2358 v0159 = stack[-1];
2359 v0159 = qcdr(v0159);
2360 stack[-1] = v0159;
2361 v0159 = stack[-1];
2362 v0159 = Llength(nil, v0159);
2363 nil = C_nil;
2364 if (exception_pending()) goto v0164;
2365 env = stack[-9];
2366 v0159 = Lonep(nil, v0159);
2367 env = stack[-9];
2368 if (v0159 == nil) goto v0167;
2369 stack[0] = stack[-2];
2370 v0159 = stack[-1];
2371 v0160 = qcar(v0159);
2372 v0159 = stack[-4];
2373 v0159 = CC_fortexp1(env, v0160, v0159);
2374 nil = C_nil;
2375 if (exception_pending()) goto v0164;
2376 env = stack[-9];
2377 v0159 = cons(stack[0], v0159);
2378 nil = C_nil;
2379 if (exception_pending()) goto v0164;
2380 env = stack[-9];
2381 stack[0] = v0159;
2382 goto v0168;
2383
2384 v0168:
2385 v0160 = stack[-3];
2386 v0159 = stack[-4];
2387 v0159 = (Lisp_Object)geq2(v0160, v0159);
2388 nil = C_nil;
2389 if (exception_pending()) goto v0164;
2390 v0159 = v0159 ? lisp_true : nil;
2391 env = stack[-9];
2392 if (v0159 == nil) { Lisp_Object res = stack[0]; popv(10); return onevalue(res); }
2393 v0159 = stack[0];
2394 fn = elt(env, 34); /* insertparens */
2395 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2396 nil = C_nil;
2397 if (exception_pending()) goto v0164;
2398 stack[0] = v0159;
2399 { Lisp_Object res = stack[0]; popv(10); return onevalue(res); }
2400
2401 v0167:
2402 v0159 = stack[-1];
2403 v0160 = qcar(v0159);
2404 v0159 = stack[-4];
2405 v0159 = CC_fortexp1(env, v0160, v0159);
2406 nil = C_nil;
2407 if (exception_pending()) goto v0164;
2408 env = stack[-9];
2409 stack[0] = v0159;
2410 v0160 = stack[-2];
2411 v0159 = elt(env, 1); /* !+ */
2412 if (v0160 == v0159) goto v0169;
2413 v0160 = stack[-2];
2414 v0159 = elt(env, 5); /* !*!* */
2415 if (!(v0160 == v0159)) goto v0170;
2416
2417 v0171:
2418 v0159 = stack[-1];
2419 v0159 = qcdr(v0159);
2420 stack[-1] = v0159;
2421 if (v0159 == nil) goto v0168;
2422 v0159 = stack[-1];
2423 v0159 = qcar(v0159);
2424 if (!(is_number(v0159))) goto v0172;
2425 v0159 = stack[-1];
2426 v0160 = qcar(v0159);
2427 v0159 = (Lisp_Object)1; /* 0 */
2428 v0159 = (Lisp_Object)lessp2(v0160, v0159);
2429 nil = C_nil;
2430 if (exception_pending()) goto v0164;
2431 v0159 = v0159 ? lisp_true : nil;
2432 env = stack[-9];
2433 if (v0159 == nil) goto v0172;
2434 v0159 = stack[-2];
2435 v0159 = ncons(v0159);
2436 nil = C_nil;
2437 if (exception_pending()) goto v0164;
2438 env = stack[-9];
2439 stack[0] = Lappend(nil, stack[0], v0159);
2440 nil = C_nil;
2441 if (exception_pending()) goto v0164;
2442 env = stack[-9];
2443 v0159 = stack[-1];
2444 v0160 = qcar(v0159);
2445 v0159 = stack[-4];
2446 v0159 = CC_fortexp1(env, v0160, v0159);
2447 nil = C_nil;
2448 if (exception_pending()) goto v0164;
2449 env = stack[-9];
2450 fn = elt(env, 34); /* insertparens */
2451 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2452 nil = C_nil;
2453 if (exception_pending()) goto v0164;
2454 env = stack[-9];
2455 v0159 = Lappend(nil, stack[0], v0159);
2456 nil = C_nil;
2457 if (exception_pending()) goto v0164;
2458 env = stack[-9];
2459 stack[0] = v0159;
2460 goto v0171;
2461
2462 v0172:
2463 v0159 = stack[-2];
2464 v0159 = ncons(v0159);
2465 nil = C_nil;
2466 if (exception_pending()) goto v0164;
2467 env = stack[-9];
2468 stack[0] = Lappend(nil, stack[0], v0159);
2469 nil = C_nil;
2470 if (exception_pending()) goto v0164;
2471 env = stack[-9];
2472 v0159 = stack[-1];
2473 v0160 = qcar(v0159);
2474 v0159 = stack[-4];
2475 v0159 = CC_fortexp1(env, v0160, v0159);
2476 nil = C_nil;
2477 if (exception_pending()) goto v0164;
2478 env = stack[-9];
2479 v0159 = Lappend(nil, stack[0], v0159);
2480 nil = C_nil;
2481 if (exception_pending()) goto v0164;
2482 env = stack[-9];
2483 stack[0] = v0159;
2484 goto v0171;
2485
2486 v0170:
2487 v0159 = stack[-1];
2488 v0159 = qcdr(v0159);
2489 stack[-1] = v0159;
2490 if (v0159 == nil) goto v0168;
2491 v0159 = stack[-2];
2492 v0159 = ncons(v0159);
2493 nil = C_nil;
2494 if (exception_pending()) goto v0164;
2495 env = stack[-9];
2496 stack[0] = Lappend(nil, stack[0], v0159);
2497 nil = C_nil;
2498 if (exception_pending()) goto v0164;
2499 env = stack[-9];
2500 v0159 = stack[-1];
2501 v0160 = qcar(v0159);
2502 v0159 = stack[-4];
2503 v0159 = CC_fortexp1(env, v0160, v0159);
2504 nil = C_nil;
2505 if (exception_pending()) goto v0164;
2506 env = stack[-9];
2507 v0159 = Lappend(nil, stack[0], v0159);
2508 nil = C_nil;
2509 if (exception_pending()) goto v0164;
2510 env = stack[-9];
2511 stack[0] = v0159;
2512 goto v0170;
2513
2514 v0169:
2515 v0159 = stack[-1];
2516 v0159 = qcdr(v0159);
2517 stack[-1] = v0159;
2518 if (v0159 == nil) goto v0168;
2519 v0159 = stack[-1];
2520 v0159 = qcar(v0159);
2521 if (!consp(v0159)) goto v0173;
2522 v0159 = stack[-1];
2523 v0159 = qcar(v0159);
2524 v0160 = qcar(v0159);
2525 v0159 = elt(env, 4); /* minus */
2526 v0159 = Lneq(nil, v0160, v0159);
2527 nil = C_nil;
2528 if (exception_pending()) goto v0164;
2529 env = stack[-9];
2530 goto v0174;
2531
2532 v0174:
2533 if (v0159 == nil) goto v0175;
2534 v0159 = stack[-2];
2535 v0159 = ncons(v0159);
2536 nil = C_nil;
2537 if (exception_pending()) goto v0164;
2538 env = stack[-9];
2539 v0159 = Lappend(nil, stack[0], v0159);
2540 nil = C_nil;
2541 if (exception_pending()) goto v0164;
2542 env = stack[-9];
2543 stack[0] = v0159;
2544 goto v0175;
2545
2546 v0175:
2547 v0159 = stack[-1];
2548 v0160 = qcar(v0159);
2549 v0159 = stack[-4];
2550 v0159 = CC_fortexp1(env, v0160, v0159);
2551 nil = C_nil;
2552 if (exception_pending()) goto v0164;
2553 env = stack[-9];
2554 v0159 = Lappend(nil, stack[0], v0159);
2555 nil = C_nil;
2556 if (exception_pending()) goto v0164;
2557 env = stack[-9];
2558 stack[0] = v0159;
2559 goto v0169;
2560
2561 v0173:
2562 v0159 = qvalue(elt(env, 3)); /* t */
2563 goto v0174;
2564
2565 v0166:
2566 v0159 = stack[-1];
2567 v0160 = qcar(v0159);
2568 v0159 = elt(env, 6); /* literal */
2569 if (v0160 == v0159) goto v0176;
2570 v0159 = stack[-1];
2571 v0160 = qcar(v0159);
2572 v0159 = elt(env, 7); /* range */
2573 if (v0160 == v0159) goto v0177;
2574 v0159 = stack[-1];
2575 v0160 = qcar(v0159);
2576 v0159 = elt(env, 9); /* !:rd!: */
2577 if (v0160 == v0159) goto v0178;
2578 v0159 = stack[-1];
2579 v0160 = qcar(v0159);
2580 v0159 = elt(env, 18); /* !:crn!: */
2581 if (v0160 == v0159) goto v0179;
2582 v0159 = stack[-1];
2583 v0160 = qcar(v0159);
2584 v0159 = elt(env, 19); /* !:gi!: */
2585 if (v0160 == v0159) goto v0180;
2586 v0159 = stack[-1];
2587 v0160 = qcar(v0159);
2588 v0159 = elt(env, 20); /* !:cr!: */
2589 if (v0160 == v0159) goto v0181;
2590 v0159 = stack[-1];
2591 v0160 = qcar(v0159);
2592 v0159 = elt(env, 26); /* !*fortranname!* */
2593 v0159 = get(v0160, v0159);
2594 env = stack[-9];
2595 stack[-7] = v0159;
2596 v0159 = stack[-1];
2597 v0159 = qcar(v0159);
2598 fn = elt(env, 30); /* fortranname */
2599 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2600 nil = C_nil;
2601 if (exception_pending()) goto v0164;
2602 env = stack[-9];
2603 stack[-8] = v0159;
2604 v0159 = stack[-1];
2605 v0159 = qcdr(v0159);
2606 stack[-1] = v0159;
2607 v0159 = stack[-1];
2608 stack[-6] = v0159;
2609 goto v0182;
2610
2611 v0182:
2612 v0159 = stack[-6];
2613 if (v0159 == nil) goto v0183;
2614 v0159 = stack[-6];
2615 v0159 = qcar(v0159);
2616 stack[-2] = v0159;
2617 stack[-1] = elt(env, 23); /* !, */
2618 v0159 = stack[-7];
2619 if (v0159 == nil) goto v0184;
2620 v0159 = stack[-2];
2621 v0159 = integerp(v0159);
2622 if (v0159 == nil) goto v0185;
2623 v0159 = stack[-2];
2624 v0159 = Lfloat(nil, v0159);
2625 nil = C_nil;
2626 if (exception_pending()) goto v0164;
2627 env = stack[-9];
2628 v0159 = ncons(v0159);
2629 nil = C_nil;
2630 if (exception_pending()) goto v0164;
2631 env = stack[-9];
2632 goto v0186;
2633
2634 v0186:
2635 v0159 = cons(stack[-1], v0159);
2636 nil = C_nil;
2637 if (exception_pending()) goto v0164;
2638 env = stack[-9];
2639 stack[-5] = v0159;
2640 v0159 = stack[-5];
2641 fn = elt(env, 35); /* lastpair */
2642 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2643 nil = C_nil;
2644 if (exception_pending()) goto v0164;
2645 env = stack[-9];
2646 stack[-4] = v0159;
2647 v0159 = stack[-6];
2648 v0159 = qcdr(v0159);
2649 stack[-6] = v0159;
2650 v0159 = stack[-4];
2651 if (!consp(v0159)) goto v0182;
2652 else goto v0187;
2653
2654 v0187:
2655 v0159 = stack[-6];
2656 if (v0159 == nil) goto v0188;
2657 stack[-3] = stack[-4];
2658 v0159 = stack[-6];
2659 v0159 = qcar(v0159);
2660 stack[-2] = v0159;
2661 stack[-1] = elt(env, 23); /* !, */
2662 v0159 = stack[-7];
2663 if (v0159 == nil) goto v0189;
2664 v0159 = stack[-2];
2665 v0159 = integerp(v0159);
2666 if (v0159 == nil) goto v0190;
2667 v0159 = stack[-2];
2668 v0159 = Lfloat(nil, v0159);
2669 nil = C_nil;
2670 if (exception_pending()) goto v0164;
2671 env = stack[-9];
2672 v0159 = ncons(v0159);
2673 nil = C_nil;
2674 if (exception_pending()) goto v0164;
2675 env = stack[-9];
2676 goto v0191;
2677
2678 v0191:
2679 v0159 = cons(stack[-1], v0159);
2680 nil = C_nil;
2681 if (exception_pending()) goto v0164;
2682 env = stack[-9];
2683 v0159 = Lrplacd(nil, stack[-3], v0159);
2684 nil = C_nil;
2685 if (exception_pending()) goto v0164;
2686 env = stack[-9];
2687 v0159 = stack[-4];
2688 fn = elt(env, 35); /* lastpair */
2689 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2690 nil = C_nil;
2691 if (exception_pending()) goto v0164;
2692 env = stack[-9];
2693 stack[-4] = v0159;
2694 v0159 = stack[-6];
2695 v0159 = qcdr(v0159);
2696 stack[-6] = v0159;
2697 goto v0187;
2698
2699 v0190:
2700 v0159 = stack[-2];
2701 fn = elt(env, 36); /* isfloat */
2702 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2703 nil = C_nil;
2704 if (exception_pending()) goto v0164;
2705 env = stack[-9];
2706 if (!(v0159 == nil)) goto v0192;
2707 v0160 = stack[-8];
2708 v0159 = elt(env, 27); /* (real dble) */
2709 v0159 = Lmemq(nil, v0160, v0159);
2710 if (!(v0159 == nil)) goto v0192;
2711 v0159 = elt(env, 28); /* real */
2712 fn = elt(env, 30); /* fortranname */
2713 stack[0] = (*qfn1(fn))(qenv(fn), v0159);
2714 nil = C_nil;
2715 if (exception_pending()) goto v0164;
2716 env = stack[-9];
2717 v0160 = stack[-2];
2718 v0159 = (Lisp_Object)1; /* 0 */
2719 v0159 = CC_fortexp1(env, v0160, v0159);
2720 nil = C_nil;
2721 if (exception_pending()) goto v0164;
2722 env = stack[-9];
2723 fn = elt(env, 34); /* insertparens */
2724 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2725 nil = C_nil;
2726 if (exception_pending()) goto v0164;
2727 env = stack[-9];
2728 v0159 = cons(stack[0], v0159);
2729 nil = C_nil;
2730 if (exception_pending()) goto v0164;
2731 env = stack[-9];
2732 goto v0191;
2733
2734 v0192:
2735 v0160 = stack[-2];
2736 v0159 = (Lisp_Object)1; /* 0 */
2737 v0159 = CC_fortexp1(env, v0160, v0159);
2738 nil = C_nil;
2739 if (exception_pending()) goto v0164;
2740 env = stack[-9];
2741 goto v0191;
2742
2743 v0189:
2744 v0160 = stack[-2];
2745 v0159 = (Lisp_Object)1; /* 0 */
2746 v0159 = CC_fortexp1(env, v0160, v0159);
2747 nil = C_nil;
2748 if (exception_pending()) goto v0164;
2749 env = stack[-9];
2750 goto v0191;
2751
2752 v0188:
2753 v0159 = stack[-5];
2754 goto v0193;
2755
2756 v0193:
2757 v0159 = qcdr(v0159);
2758 stack[0] = stack[-8];
2759 fn = elt(env, 34); /* insertparens */
2760 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2761 nil = C_nil;
2762 if (exception_pending()) goto v0164;
2763 {
2764 Lisp_Object v0194 = stack[0];
2765 popv(10);
2766 return cons(v0194, v0159);
2767 }
2768
2769 v0185:
2770 v0159 = stack[-2];
2771 fn = elt(env, 36); /* isfloat */
2772 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2773 nil = C_nil;
2774 if (exception_pending()) goto v0164;
2775 env = stack[-9];
2776 if (!(v0159 == nil)) goto v0195;
2777 v0160 = stack[-8];
2778 v0159 = elt(env, 27); /* (real dble) */
2779 v0159 = Lmemq(nil, v0160, v0159);
2780 if (!(v0159 == nil)) goto v0195;
2781 v0159 = elt(env, 28); /* real */
2782 fn = elt(env, 30); /* fortranname */
2783 stack[0] = (*qfn1(fn))(qenv(fn), v0159);
2784 nil = C_nil;
2785 if (exception_pending()) goto v0164;
2786 env = stack[-9];
2787 v0160 = stack[-2];
2788 v0159 = (Lisp_Object)1; /* 0 */
2789 v0159 = CC_fortexp1(env, v0160, v0159);
2790 nil = C_nil;
2791 if (exception_pending()) goto v0164;
2792 env = stack[-9];
2793 fn = elt(env, 34); /* insertparens */
2794 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2795 nil = C_nil;
2796 if (exception_pending()) goto v0164;
2797 env = stack[-9];
2798 v0159 = cons(stack[0], v0159);
2799 nil = C_nil;
2800 if (exception_pending()) goto v0164;
2801 env = stack[-9];
2802 goto v0186;
2803
2804 v0195:
2805 v0160 = stack[-2];
2806 v0159 = (Lisp_Object)1; /* 0 */
2807 v0159 = CC_fortexp1(env, v0160, v0159);
2808 nil = C_nil;
2809 if (exception_pending()) goto v0164;
2810 env = stack[-9];
2811 goto v0186;
2812
2813 v0184:
2814 v0160 = stack[-2];
2815 v0159 = (Lisp_Object)1; /* 0 */
2816 v0159 = CC_fortexp1(env, v0160, v0159);
2817 nil = C_nil;
2818 if (exception_pending()) goto v0164;
2819 env = stack[-9];
2820 goto v0186;
2821
2822 v0183:
2823 v0159 = qvalue(elt(env, 2)); /* nil */
2824 goto v0193;
2825
2826 v0181:
2827 v0159 = qvalue(elt(env, 14)); /* !*double */
2828 if (v0159 == nil) goto v0196;
2829 v0159 = qvalue(elt(env, 21)); /* !*f90 */
2830 if (v0159 == nil) goto v0196;
2831 stack[-4] = elt(env, 22); /* cmplx!( */
2832 v0160 = elt(env, 9); /* !:rd!: */
2833 v0159 = stack[-1];
2834 v0159 = qcdr(v0159);
2835 v0159 = qcar(v0159);
2836 v0160 = cons(v0160, v0159);
2837 nil = C_nil;
2838 if (exception_pending()) goto v0164;
2839 env = stack[-9];
2840 v0159 = stack[-3];
2841 stack[-2] = CC_fortexp1(env, v0160, v0159);
2842 nil = C_nil;
2843 if (exception_pending()) goto v0164;
2844 env = stack[-9];
2845 stack[0] = elt(env, 23); /* !, */
2846 v0160 = elt(env, 9); /* !:rd!: */
2847 v0159 = stack[-1];
2848 v0159 = qcdr(v0159);
2849 v0159 = qcdr(v0159);
2850 v0160 = cons(v0160, v0159);
2851 nil = C_nil;
2852 if (exception_pending()) goto v0164;
2853 env = stack[-9];
2854 v0159 = stack[-3];
2855 stack[-1] = CC_fortexp1(env, v0160, v0159);
2856 nil = C_nil;
2857 if (exception_pending()) goto v0164;
2858 env = stack[-9];
2859 v0161 = elt(env, 23); /* !, */
2860 v0160 = elt(env, 24); /* kind!(1!.0!D0!) */
2861 v0159 = elt(env, 25); /* !) */
2862 v0159 = list3(v0161, v0160, v0159);
2863 nil = C_nil;
2864 if (exception_pending()) goto v0164;
2865 env = stack[-9];
2866 v0159 = Lappend(nil, stack[-1], v0159);
2867 nil = C_nil;
2868 if (exception_pending()) goto v0164;
2869 env = stack[-9];
2870 v0159 = cons(stack[0], v0159);
2871 nil = C_nil;
2872 if (exception_pending()) goto v0164;
2873 env = stack[-9];
2874 v0159 = Lappend(nil, stack[-2], v0159);
2875 nil = C_nil;
2876 if (exception_pending()) goto v0164;
2877 {
2878 Lisp_Object v0197 = stack[-4];
2879 popv(10);
2880 return cons(v0197, v0159);
2881 }
2882
2883 v0196:
2884 stack[-4] = elt(env, 22); /* cmplx!( */
2885 v0160 = elt(env, 9); /* !:rd!: */
2886 v0159 = stack[-1];
2887 v0159 = qcdr(v0159);
2888 v0159 = qcar(v0159);
2889 v0160 = cons(v0160, v0159);
2890 nil = C_nil;
2891 if (exception_pending()) goto v0164;
2892 env = stack[-9];
2893 v0159 = stack[-3];
2894 stack[-2] = CC_fortexp1(env, v0160, v0159);
2895 nil = C_nil;
2896 if (exception_pending()) goto v0164;
2897 env = stack[-9];
2898 stack[0] = elt(env, 23); /* !, */
2899 v0160 = elt(env, 9); /* !:rd!: */
2900 v0159 = stack[-1];
2901 v0159 = qcdr(v0159);
2902 v0159 = qcdr(v0159);
2903 v0160 = cons(v0160, v0159);
2904 nil = C_nil;
2905 if (exception_pending()) goto v0164;
2906 env = stack[-9];
2907 v0159 = stack[-3];
2908 stack[-1] = CC_fortexp1(env, v0160, v0159);
2909 nil = C_nil;
2910 if (exception_pending()) goto v0164;
2911 env = stack[-9];
2912 v0159 = elt(env, 25); /* !) */
2913 v0159 = ncons(v0159);
2914 nil = C_nil;
2915 if (exception_pending()) goto v0164;
2916 env = stack[-9];
2917 v0159 = Lappend(nil, stack[-1], v0159);
2918 nil = C_nil;
2919 if (exception_pending()) goto v0164;
2920 env = stack[-9];
2921 v0159 = cons(stack[0], v0159);
2922 nil = C_nil;
2923 if (exception_pending()) goto v0164;
2924 env = stack[-9];
2925 v0159 = Lappend(nil, stack[-2], v0159);
2926 nil = C_nil;
2927 if (exception_pending()) goto v0164;
2928 {
2929 Lisp_Object v0198 = stack[-4];
2930 popv(10);
2931 return cons(v0198, v0159);
2932 }
2933
2934 v0180:
2935 v0159 = stack[-1];
2936 fn = elt(env, 37); /* !*gi2cr */
2937 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2938 nil = C_nil;
2939 if (exception_pending()) goto v0164;
2940 env = stack[-9];
2941 stack[-1] = v0159;
2942 goto v0162;
2943
2944 v0179:
2945 v0159 = stack[-1];
2946 fn = elt(env, 38); /* !*crn2cr */
2947 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2948 nil = C_nil;
2949 if (exception_pending()) goto v0164;
2950 env = stack[-9];
2951 stack[-1] = v0159;
2952 goto v0162;
2953
2954 v0178:
2955 v0159 = stack[-1];
2956 v0159 = qcdr(v0159);
2957 if (!consp(v0159)) goto v0199;
2958 stack[-3] = qvalue(elt(env, 10)); /* !:lower!-sci!: */
2959 qvalue(elt(env, 10)) = nil; /* !:lower!-sci!: */
2960 stack[-2] = qvalue(elt(env, 11)); /* !:upper!-sci!: */
2961 qvalue(elt(env, 11)) = nil; /* !:upper!-sci!: */
2962 v0159 = (Lisp_Object)1; /* 0 */
2963 qvalue(elt(env, 10)) = v0159; /* !:lower!-sci!: */
2964 v0159 = (Lisp_Object)1; /* 0 */
2965 qvalue(elt(env, 11)) = v0159; /* !:upper!-sci!: */
2966 v0159 = stack[-1];
2967 v0159 = qcdr(v0159);
2968 if (!consp(v0159)) goto v0200;
2969 v0159 = stack[-1];
2970 stack[0] = v0159;
2971 goto v0201;
2972
2973 v0201:
2974 v0160 = qvalue(elt(env, 12)); /* !:bprec!: */
2975 v0159 = (Lisp_Object)49; /* 3 */
2976 v0159 = difference2(v0160, v0159);
2977 nil = C_nil;
2978 if (exception_pending()) goto v0202;
2979 env = stack[-9];
2980 fn = elt(env, 39); /* round!:mt */
2981 v0159 = (*qfn2(fn))(qenv(fn), stack[0], v0159);
2982 nil = C_nil;
2983 if (exception_pending()) goto v0202;
2984 env = stack[-9];
2985 fn = elt(env, 40); /* csl_normbf */
2986 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2987 nil = C_nil;
2988 if (exception_pending()) goto v0202;
2989 env = stack[-9];
2990 fn = elt(env, 41); /* bfexplode0 */
2991 v0159 = (*qfn1(fn))(qenv(fn), v0159);
2992 nil = C_nil;
2993 if (exception_pending()) goto v0202;
2994 env = stack[-9];
2995 stack[-4] = v0159;
2996 v0159 = stack[-4];
2997 v0159 = qcar(v0159);
2998 stack[-1] = v0159;
2999 v0159 = stack[-4];
3000 v0159 = qcdr(v0159);
3001 stack[0] = qcar(v0159);
3002 v0159 = stack[-4];
3003 v0159 = qcdr(v0159);
3004 v0159 = qcdr(v0159);
3005 v0159 = qcar(v0159);
3006 v0159 = sub1(v0159);
3007 nil = C_nil;
3008 if (exception_pending()) goto v0202;
3009 env = stack[-9];
3010 v0159 = plus2(stack[0], v0159);
3011 nil = C_nil;
3012 if (exception_pending()) goto v0202;
3013 env = stack[-9];
3014 stack[-4] = v0159;
3015 v0161 = elt(env, 6); /* literal */
3016 v0159 = stack[-1];
3017 v0160 = qcar(v0159);
3018 v0159 = elt(env, 13); /* !. */
3019 v0160 = list3(v0161, v0160, v0159);
3020 nil = C_nil;
3021 if (exception_pending()) goto v0202;
3022 env = stack[-9];
3023 v0159 = stack[-1];
3024 v0159 = qcdr(v0159);
3025 v0159 = Lappend(nil, v0160, v0159);
3026 nil = C_nil;
3027 if (exception_pending()) goto v0202;
3028 env = stack[-9];
3029 stack[-1] = v0159;
3030 v0160 = stack[-4];
3031 v0159 = (Lisp_Object)1; /* 0 */
3032 if (v0160 == v0159) goto v0203;
3033 stack[0] = stack[-1];
3034 v0159 = qvalue(elt(env, 14)); /* !*double */
3035 if (v0159 == nil) goto v0204;
3036 v0159 = elt(env, 15); /* !D */
3037 v0160 = v0159;
3038 goto v0205;
3039
3040 v0205:
3041 v0159 = stack[-4];
3042 v0159 = list2(v0160, v0159);
3043 nil = C_nil;
3044 if (exception_pending()) goto v0202;
3045 env = stack[-9];
3046 v0159 = Lappend(nil, stack[0], v0159);
3047 nil = C_nil;
3048 if (exception_pending()) goto v0202;
3049 env = stack[-9];
3050 stack[-1] = v0159;
3051 goto v0206;
3052
3053 v0206:
3054 v0159 = stack[-1];
3055 fn = elt(env, 42); /* fortliteral */
3056 v0159 = (*qfn1(fn))(qenv(fn), v0159);
3057 nil = C_nil;
3058 if (exception_pending()) goto v0202;
3059 env = stack[-9];
3060 qvalue(elt(env, 11)) = stack[-2]; /* !:upper!-sci!: */
3061 qvalue(elt(env, 10)) = stack[-3]; /* !:lower!-sci!: */
3062 { popv(10); return onevalue(v0159); }
3063
3064 v0204:
3065 v0159 = elt(env, 16); /* !E */
3066 v0160 = v0159;
3067 goto v0205;
3068
3069 v0203:
3070 v0159 = qvalue(elt(env, 14)); /* !*double */
3071 if (v0159 == nil) goto v0206;
3072 v0160 = stack[-1];
3073 v0159 = elt(env, 17); /* (!D 0) */
3074 v0159 = Lappend(nil, v0160, v0159);
3075 nil = C_nil;
3076 if (exception_pending()) goto v0202;
3077 env = stack[-9];
3078 stack[-1] = v0159;
3079 goto v0206;
3080
3081 v0200:
3082 v0159 = stack[-1];
3083 v0159 = qcdr(v0159);
3084 fn = elt(env, 43); /* fl2bf */
3085 v0159 = (*qfn1(fn))(qenv(fn), v0159);
3086 nil = C_nil;
3087 if (exception_pending()) goto v0202;
3088 env = stack[-9];
3089 stack[0] = v0159;
3090 goto v0201;
3091
3092 v0199:
3093 v0159 = stack[-1];
3094 v0159 = qcdr(v0159);
3095 popv(10);
3096 return ncons(v0159);
3097
3098 v0177:
3099 v0159 = stack[-1];
3100 v0159 = qcdr(v0159);
3101 v0159 = qcar(v0159);
3102 fn = elt(env, 44); /* fortexp */
3103 stack[-2] = (*qfn1(fn))(qenv(fn), v0159);
3104 nil = C_nil;
3105 if (exception_pending()) goto v0164;
3106 env = stack[-9];
3107 stack[0] = elt(env, 8); /* !: */
3108 v0159 = stack[-1];
3109 v0159 = qcdr(v0159);
3110 v0159 = qcdr(v0159);
3111 v0159 = qcar(v0159);
3112 fn = elt(env, 44); /* fortexp */
3113 v0159 = (*qfn1(fn))(qenv(fn), v0159);
3114 nil = C_nil;
3115 if (exception_pending()) goto v0164;
3116 env = stack[-9];
3117 v0159 = cons(stack[0], v0159);
3118 nil = C_nil;
3119 if (exception_pending()) goto v0164;
3120 {
3121 Lisp_Object v0207 = stack[-2];
3122 popv(10);
3123 return Lappend(nil, v0207, v0159);
3124 }
3125
3126 v0176:
3127 v0159 = stack[-1];
3128 {
3129 popv(10);
3130 fn = elt(env, 42); /* fortliteral */
3131 return (*qfn1(fn))(qenv(fn), v0159);
3132 }
3133
3134 v0163:
3135 v0159 = stack[-1];
3136 fn = elt(env, 30); /* fortranname */
3137 v0159 = (*qfn1(fn))(qenv(fn), v0159);
3138 nil = C_nil;
3139 if (exception_pending()) goto v0164;
3140 popv(10);
3141 return ncons(v0159);
3142 /* error exit handlers */
3143 v0202:
3144 env = stack[-9];
3145 qvalue(elt(env, 11)) = stack[-2]; /* !:upper!-sci!: */
3146 qvalue(elt(env, 10)) = stack[-3]; /* !:lower!-sci!: */
3147 popv(10);
3148 return nil;
3149 v0164:
3150 popv(10);
3151 return nil;
3152 }
3153
3154
3155
3156 /* Code for freeindp */
3157
CC_freeindp(Lisp_Object env,Lisp_Object v0000)3158 static Lisp_Object CC_freeindp(Lisp_Object env,
3159 Lisp_Object v0000)
3160 {
3161 Lisp_Object nil = C_nil;
3162 Lisp_Object v0141, v0140;
3163 Lisp_Object fn;
3164 CSL_IGNORE(nil);
3165 #ifdef DEBUG
3166 if (check_env(env)) return aerror("env for freeindp");
3167 #endif
3168 if (stack >= stacklimit)
3169 {
3170 push(v0000);
3171 env = reclaim(env, "stack", GC_STACK, 0);
3172 pop(v0000);
3173 nil = C_nil;
3174 if (exception_pending()) return nil;
3175 }
3176 push(env);
3177 /* space for vars preserved across procedure calls */
3178 push(nil);
3179 /* copy arguments values to proper place */
3180 stack[0] = v0000;
3181 /* end of prologue */
3182
3183 v0222:
3184 v0141 = stack[0];
3185 if (v0141 == nil) goto v0223;
3186 v0141 = stack[0];
3187 v0141 = (is_number(v0141) ? lisp_true : nil);
3188 goto v0224;
3189
3190 v0224:
3191 if (v0141 == nil) goto v0163;
3192 v0141 = qvalue(elt(env, 2)); /* nil */
3193 { popv(2); return onevalue(v0141); }
3194
3195 v0163:
3196 v0141 = stack[0];
3197 if (!consp(v0141)) goto v0225;
3198 v0141 = stack[0];
3199 v0140 = qcar(v0141);
3200 v0141 = elt(env, 3); /* !*sq */
3201 if (v0140 == v0141) goto v0226;
3202 v0141 = stack[0];
3203 v0141 = qcar(v0141);
3204 if (!(symbolp(v0141))) goto v0153;
3205 v0141 = stack[0];
3206 v0140 = qcar(v0141);
3207 v0141 = elt(env, 5); /* dname */
3208 v0141 = get(v0140, v0141);
3209 env = stack[-1];
3210 if (v0141 == nil) goto v0153;
3211 v0141 = qvalue(elt(env, 2)); /* nil */
3212 { popv(2); return onevalue(v0141); }
3213
3214 v0153:
3215 v0141 = stack[0];
3216 v0140 = qcar(v0141);
3217 v0141 = elt(env, 6); /* indexvar */
3218 v0141 = Lflagp(nil, v0140, v0141);
3219 env = stack[-1];
3220 if (v0141 == nil) goto v0227;
3221 v0141 = stack[0];
3222 v0141 = qcdr(v0141);
3223 {
3224 popv(2);
3225 fn = elt(env, 9); /* indxchk */
3226 return (*qfn1(fn))(qenv(fn), v0141);
3227 }
3228
3229 v0227:
3230 v0141 = stack[0];
3231 v0140 = qcar(v0141);
3232 v0141 = elt(env, 7); /* indexfun */
3233 v0141 = get(v0140, v0141);
3234 env = stack[-1];
3235 v0140 = v0141;
3236 if (v0141 == nil) goto v0228;
3237 v0141 = stack[0];
3238 v0141 = qcdr(v0141);
3239 v0141 = Lapply1(nil, v0140, v0141);
3240 nil = C_nil;
3241 if (exception_pending()) goto v0229;
3242 env = stack[-1];
3243 stack[0] = v0141;
3244 goto v0222;
3245
3246 v0228:
3247 v0141 = stack[0];
3248 v0140 = qcar(v0141);
3249 v0141 = elt(env, 8); /* partdf */
3250 if (v0140 == v0141) goto v0230;
3251 v0141 = stack[0];
3252 v0141 = qcdr(v0141);
3253 fn = elt(env, 10); /* lfreeindp */
3254 v0141 = (*qfn1(fn))(qenv(fn), v0141);
3255 nil = C_nil;
3256 if (exception_pending()) goto v0229;
3257 env = stack[-1];
3258 if (!(v0141 == nil)) { popv(2); return onevalue(v0141); }
3259 v0141 = stack[0];
3260 v0141 = qcar(v0141);
3261 stack[0] = v0141;
3262 goto v0222;
3263
3264 v0230:
3265 v0141 = stack[0];
3266 v0141 = qcdr(v0141);
3267 v0141 = qcdr(v0141);
3268 if (v0141 == nil) goto v0149;
3269 v0141 = stack[0];
3270 v0141 = qcdr(v0141);
3271 v0141 = qcar(v0141);
3272 v0141 = CC_freeindp(env, v0141);
3273 nil = C_nil;
3274 if (exception_pending()) goto v0229;
3275 env = stack[-1];
3276 if (!(v0141 == nil)) { popv(2); return onevalue(v0141); }
3277 v0141 = stack[0];
3278 v0141 = qcdr(v0141);
3279 v0141 = qcdr(v0141);
3280 v0141 = qcar(v0141);
3281 stack[0] = v0141;
3282 goto v0222;
3283
3284 v0149:
3285 v0141 = stack[0];
3286 v0141 = qcdr(v0141);
3287 v0141 = qcar(v0141);
3288 stack[0] = v0141;
3289 goto v0222;
3290
3291 v0226:
3292 v0141 = stack[0];
3293 v0141 = qcdr(v0141);
3294 v0141 = qcar(v0141);
3295 v0141 = qcar(v0141);
3296 if (v0141 == nil) goto v0231;
3297 v0141 = stack[0];
3298 v0141 = qcdr(v0141);
3299 v0140 = qcar(v0141);
3300 v0141 = elt(env, 4); /* prepf */
3301 fn = elt(env, 11); /* sqform */
3302 v0141 = (*qfn2(fn))(qenv(fn), v0140, v0141);
3303 nil = C_nil;
3304 if (exception_pending()) goto v0229;
3305 env = stack[-1];
3306 goto v0232;
3307
3308 v0232:
3309 stack[0] = v0141;
3310 goto v0222;
3311
3312 v0231:
3313 v0141 = (Lisp_Object)1; /* 0 */
3314 goto v0232;
3315
3316 v0225:
3317 v0141 = qvalue(elt(env, 2)); /* nil */
3318 { popv(2); return onevalue(v0141); }
3319
3320 v0223:
3321 v0141 = qvalue(elt(env, 1)); /* t */
3322 goto v0224;
3323 /* error exit handlers */
3324 v0229:
3325 popv(2);
3326 return nil;
3327 }
3328
3329
3330
3331 /* Code for getphystypestate */
3332
CC_getphystypestate(Lisp_Object env,Lisp_Object v0000)3333 static Lisp_Object CC_getphystypestate(Lisp_Object env,
3334 Lisp_Object v0000)
3335 {
3336 Lisp_Object nil = C_nil;
3337 Lisp_Object v0233;
3338 Lisp_Object fn;
3339 CSL_IGNORE(nil);
3340 #ifdef DEBUG
3341 if (check_env(env)) return aerror("env for getphystypestate");
3342 #endif
3343 if (stack >= stacklimit)
3344 {
3345 push(v0000);
3346 env = reclaim(env, "stack", GC_STACK, 0);
3347 pop(v0000);
3348 nil = C_nil;
3349 if (exception_pending()) return nil;
3350 }
3351 push(env);
3352 /* space for vars preserved across procedure calls */
3353 push(nil);
3354 /* copy arguments values to proper place */
3355 stack[0] = v0000;
3356 /* end of prologue */
3357 v0233 = stack[0];
3358 v0233 = qcar(v0233);
3359 fn = elt(env, 3); /* statep!* */
3360 v0233 = (*qfn1(fn))(qenv(fn), v0233);
3361 nil = C_nil;
3362 if (exception_pending()) goto v0234;
3363 env = stack[-1];
3364 if (v0233 == nil) goto v0235;
3365 v0233 = stack[0];
3366 v0233 = qcdr(v0233);
3367 v0233 = qcar(v0233);
3368 fn = elt(env, 3); /* statep!* */
3369 v0233 = (*qfn1(fn))(qenv(fn), v0233);
3370 nil = C_nil;
3371 if (exception_pending()) goto v0234;
3372 env = stack[-1];
3373 if (v0233 == nil) goto v0235;
3374 v0233 = qvalue(elt(env, 1)); /* nil */
3375 { popv(2); return onevalue(v0233); }
3376
3377 v0235:
3378 v0233 = elt(env, 2); /* state */
3379 { popv(2); return onevalue(v0233); }
3380 /* error exit handlers */
3381 v0234:
3382 popv(2);
3383 return nil;
3384 }
3385
3386
3387
3388 /* Code for intargfn */
3389
CC_intargfn(Lisp_Object env,int nargs,Lisp_Object v0000,Lisp_Object v0001,Lisp_Object v0211,...)3390 static Lisp_Object MS_CDECL CC_intargfn(Lisp_Object env, int nargs,
3391 Lisp_Object v0000, Lisp_Object v0001,
3392 Lisp_Object v0211, ...)
3393 {
3394 Lisp_Object nil = C_nil;
3395 Lisp_Object v0249, v0250, v0153, v0154;
3396 Lisp_Object fn;
3397 CSL_IGNORE(nil);
3398 argcheck(nargs, 3, "intargfn");
3399 #ifdef DEBUG
3400 if (check_env(env)) return aerror("env for intargfn");
3401 #endif
3402 if (stack >= stacklimit)
3403 {
3404 push3(v0211,v0001,v0000);
3405 env = reclaim(env, "stack", GC_STACK, 0);
3406 pop3(v0000,v0001,v0211);
3407 nil = C_nil;
3408 if (exception_pending()) return nil;
3409 }
3410 push(env);
3411 /* space for vars preserved across procedure calls */
3412 push5(nil, nil, nil, nil, nil);
3413 /* copy arguments values to proper place */
3414 stack[-1] = v0211;
3415 stack[-2] = v0001;
3416 stack[-3] = v0000;
3417 /* end of prologue */
3418 stack[-4] = nil;
3419 v0249 = stack[-3];
3420 v0249 = qcdr(v0249);
3421 stack[0] = v0249;
3422 goto v0163;
3423
3424 v0163:
3425 v0249 = stack[0];
3426 if (v0249 == nil) goto v0251;
3427 v0249 = stack[0];
3428 v0153 = qcar(v0249);
3429 v0250 = stack[-2];
3430 v0249 = stack[-1];
3431 fn = elt(env, 4); /* form1 */
3432 v0154 = (*qfnn(fn))(qenv(fn), 3, v0153, v0250, v0249);
3433 nil = C_nil;
3434 if (exception_pending()) goto v0215;
3435 env = stack[-5];
3436 v0153 = stack[-2];
3437 v0250 = elt(env, 1); /* integer */
3438 v0249 = stack[-1];
3439 fn = elt(env, 5); /* convertmode1 */
3440 v0250 = (*qfnn(fn))(qenv(fn), 4, v0154, v0153, v0250, v0249);
3441 nil = C_nil;
3442 if (exception_pending()) goto v0215;
3443 env = stack[-5];
3444 v0249 = stack[-4];
3445 v0249 = cons(v0250, v0249);
3446 nil = C_nil;
3447 if (exception_pending()) goto v0215;
3448 env = stack[-5];
3449 stack[-4] = v0249;
3450 v0249 = stack[0];
3451 v0249 = qcdr(v0249);
3452 stack[0] = v0249;
3453 goto v0163;
3454
3455 v0251:
3456 stack[0] = elt(env, 2); /* list */
3457 v0249 = stack[-3];
3458 v0153 = qcar(v0249);
3459 v0250 = stack[-2];
3460 v0249 = elt(env, 3); /* algebraic */
3461 fn = elt(env, 4); /* form1 */
3462 v0250 = (*qfnn(fn))(qenv(fn), 3, v0153, v0250, v0249);
3463 nil = C_nil;
3464 if (exception_pending()) goto v0215;
3465 env = stack[-5];
3466 v0249 = stack[-4];
3467 v0249 = Lnreverse(nil, v0249);
3468 {
3469 Lisp_Object v0252 = stack[0];
3470 popv(6);
3471 return list2star(v0252, v0250, v0249);
3472 }
3473 /* error exit handlers */
3474 v0215:
3475 popv(6);
3476 return nil;
3477 }
3478
3479
3480
3481 /* Code for simpfourier1 */
3482
CC_simpfourier1(Lisp_Object env,Lisp_Object v0000)3483 static Lisp_Object CC_simpfourier1(Lisp_Object env,
3484 Lisp_Object v0000)
3485 {
3486 Lisp_Object nil = C_nil;
3487 Lisp_Object v0173, v0261;
3488 Lisp_Object fn;
3489 CSL_IGNORE(nil);
3490 #ifdef DEBUG
3491 if (check_env(env)) return aerror("env for simpfourier1");
3492 #endif
3493 if (stack >= stacklimit)
3494 {
3495 push(v0000);
3496 env = reclaim(env, "stack", GC_STACK, 0);
3497 pop(v0000);
3498 nil = C_nil;
3499 if (exception_pending()) return nil;
3500 }
3501 push(env);
3502 /* space for vars preserved across procedure calls */
3503 push(nil);
3504 /* copy arguments values to proper place */
3505 stack[0] = v0000;
3506 /* end of prologue */
3507 v0173 = stack[0];
3508 if (!consp(v0173)) goto v0262;
3509 v0261 = stack[0];
3510 v0173 = elt(env, 5); /* !:fs!: */
3511 if (!consp(v0261)) goto v0217;
3512 v0261 = qcar(v0261);
3513 if (v0261 == v0173) { Lisp_Object res = stack[0]; popv(2); return onevalue(res); }
3514 else goto v0217;
3515
3516 v0217:
3517 v0173 = stack[0];
3518 v0261 = qcar(v0173);
3519 v0173 = elt(env, 6); /* simpfour */
3520 v0173 = get(v0261, v0173);
3521 env = stack[-1];
3522 v0261 = v0173;
3523 if (v0173 == nil) goto v0250;
3524 v0173 = stack[0];
3525 v0173 = qcdr(v0173);
3526 popv(2);
3527 return Lapply1(nil, v0261, v0173);
3528
3529 v0250:
3530 v0261 = elt(env, 7); /* "Unknown function" */
3531 v0173 = stack[0];
3532 v0173 = qcar(v0173);
3533 v0173 = cons(v0261, v0173);
3534 nil = C_nil;
3535 if (exception_pending()) goto v0230;
3536 env = stack[-1];
3537 v0261 = v0173;
3538 v0173 = v0261;
3539 qvalue(elt(env, 2)) = v0173; /* errmsg!* */
3540 v0173 = qvalue(elt(env, 3)); /* !*protfg */
3541 if (!(v0173 == nil)) goto v0151;
3542 v0173 = v0261;
3543 fn = elt(env, 8); /* lprie */
3544 v0173 = (*qfn1(fn))(qenv(fn), v0173);
3545 nil = C_nil;
3546 if (exception_pending()) goto v0230;
3547 env = stack[-1];
3548 goto v0151;
3549
3550 v0151:
3551 v0173 = Lerror0(nil, 0);
3552 nil = C_nil;
3553 if (exception_pending()) goto v0230;
3554 env = stack[-1];
3555 v0173 = stack[0];
3556 fn = elt(env, 9); /* !*sq2fourier */
3557 v0261 = (*qfn1(fn))(qenv(fn), v0173);
3558 nil = C_nil;
3559 if (exception_pending()) goto v0230;
3560 v0173 = (Lisp_Object)17; /* 1 */
3561 popv(2);
3562 return cons(v0261, v0173);
3563
3564 v0262:
3565 v0173 = stack[0];
3566 fn = elt(env, 10); /* harmonicp */
3567 v0173 = (*qfn1(fn))(qenv(fn), v0173);
3568 nil = C_nil;
3569 if (exception_pending()) goto v0230;
3570 env = stack[-1];
3571 if (v0173 == nil) goto v0118;
3572 v0173 = elt(env, 1); /* "Secular angle not allowed" */
3573 v0261 = v0173;
3574 v0173 = v0261;
3575 qvalue(elt(env, 2)) = v0173; /* errmsg!* */
3576 v0173 = qvalue(elt(env, 3)); /* !*protfg */
3577 if (!(v0173 == nil)) goto v0241;
3578 v0173 = v0261;
3579 fn = elt(env, 8); /* lprie */
3580 v0173 = (*qfn1(fn))(qenv(fn), v0173);
3581 nil = C_nil;
3582 if (exception_pending()) goto v0230;
3583 env = stack[-1];
3584 goto v0241;
3585
3586 v0241:
3587 v0173 = Lerror0(nil, 0);
3588 nil = C_nil;
3589 if (exception_pending()) goto v0230;
3590 env = stack[-1];
3591 goto v0118;
3592
3593 v0118:
3594 v0173 = stack[0];
3595 fn = elt(env, 11); /* simp */
3596 v0173 = (*qfn1(fn))(qenv(fn), v0173);
3597 nil = C_nil;
3598 if (exception_pending()) goto v0230;
3599 env = stack[-1];
3600 fn = elt(env, 9); /* !*sq2fourier */
3601 v0261 = (*qfn1(fn))(qenv(fn), v0173);
3602 nil = C_nil;
3603 if (exception_pending()) goto v0230;
3604 v0173 = (Lisp_Object)17; /* 1 */
3605 popv(2);
3606 return cons(v0261, v0173);
3607 /* error exit handlers */
3608 v0230:
3609 popv(2);
3610 return nil;
3611 }
3612
3613
3614
3615 /* Code for dp_from_a */
3616
CC_dp_from_a(Lisp_Object env,Lisp_Object v0000)3617 static Lisp_Object CC_dp_from_a(Lisp_Object env,
3618 Lisp_Object v0000)
3619 {
3620 Lisp_Object nil = C_nil;
3621 Lisp_Object v0274, v0275, v0276;
3622 Lisp_Object fn;
3623 CSL_IGNORE(nil);
3624 #ifdef DEBUG
3625 if (check_env(env)) return aerror("env for dp_from_a");
3626 #endif
3627 if (stack >= stacklimit)
3628 {
3629 push(v0000);
3630 env = reclaim(env, "stack", GC_STACK, 0);
3631 pop(v0000);
3632 nil = C_nil;
3633 if (exception_pending()) return nil;
3634 }
3635 push(env);
3636 /* space for vars preserved across procedure calls */
3637 push5(nil, nil, nil, nil, nil);
3638 /* copy arguments values to proper place */
3639 stack[0] = v0000;
3640 /* end of prologue */
3641 v0275 = stack[0];
3642 v0274 = elt(env, 1); /* list */
3643 if (!consp(v0275)) goto v0241;
3644 v0275 = qcar(v0275);
3645 if (!(v0275 == v0274)) goto v0241;
3646 v0274 = qvalue(elt(env, 2)); /* t */
3647 goto v0262;
3648
3649 v0262:
3650 if (v0274 == nil) goto v0162;
3651 v0275 = stack[0];
3652 v0274 = elt(env, 4); /* "dpoly" */
3653 {
3654 popv(6);
3655 fn = elt(env, 9); /* typerr */
3656 return (*qfn2(fn))(qenv(fn), v0275, v0274);
3657 }
3658
3659 v0162:
3660 v0274 = stack[0];
3661 if (!consp(v0274)) goto v0231;
3662 v0274 = stack[0];
3663 v0274 = qcar(v0274);
3664 if (!consp(v0274)) goto v0251;
3665 v0274 = qvalue(elt(env, 2)); /* t */
3666 goto v0243;
3667
3668 v0243:
3669 if (v0274 == nil) goto v0167;
3670 v0274 = stack[0];
3671 v0275 = qcar(v0274);
3672 v0274 = elt(env, 5); /* "dpoly operator" */
3673 {
3674 popv(6);
3675 fn = elt(env, 9); /* typerr */
3676 return (*qfn2(fn))(qenv(fn), v0275, v0274);
3677 }
3678
3679 v0167:
3680 v0274 = stack[0];
3681 v0275 = qcar(v0274);
3682 v0274 = elt(env, 6); /* dp!=fn */
3683 v0274 = get(v0275, v0274);
3684 env = stack[-5];
3685 v0276 = v0274;
3686 v0275 = v0276;
3687 v0274 = elt(env, 7); /* dp!=fnpow */
3688 if (v0275 == v0274) goto v0169;
3689 v0274 = v0276;
3690 if (v0274 == nil) goto v0171;
3691 stack[-4] = v0276;
3692 v0274 = stack[0];
3693 v0274 = qcdr(v0274);
3694 stack[-3] = v0274;
3695 v0274 = stack[-3];
3696 if (v0274 == nil) goto v0277;
3697 v0274 = stack[-3];
3698 v0274 = qcar(v0274);
3699 v0274 = CC_dp_from_a(env, v0274);
3700 nil = C_nil;
3701 if (exception_pending()) goto v0278;
3702 env = stack[-5];
3703 v0274 = ncons(v0274);
3704 nil = C_nil;
3705 if (exception_pending()) goto v0278;
3706 env = stack[-5];
3707 stack[-1] = v0274;
3708 stack[-2] = v0274;
3709 goto v0149;
3710
3711 v0149:
3712 v0274 = stack[-3];
3713 v0274 = qcdr(v0274);
3714 stack[-3] = v0274;
3715 v0274 = stack[-3];
3716 if (v0274 == nil) goto v0175;
3717 stack[0] = stack[-1];
3718 v0274 = stack[-3];
3719 v0274 = qcar(v0274);
3720 v0274 = CC_dp_from_a(env, v0274);
3721 nil = C_nil;
3722 if (exception_pending()) goto v0278;
3723 env = stack[-5];
3724 v0274 = ncons(v0274);
3725 nil = C_nil;
3726 if (exception_pending()) goto v0278;
3727 env = stack[-5];
3728 v0274 = Lrplacd(nil, stack[0], v0274);
3729 nil = C_nil;
3730 if (exception_pending()) goto v0278;
3731 env = stack[-5];
3732 v0274 = stack[-1];
3733 v0274 = qcdr(v0274);
3734 stack[-1] = v0274;
3735 goto v0149;
3736
3737 v0175:
3738 v0274 = stack[-2];
3739 goto v0279;
3740
3741 v0279:
3742 v0274 = ncons(v0274);
3743 nil = C_nil;
3744 if (exception_pending()) goto v0278;
3745 env = stack[-5];
3746 {
3747 Lisp_Object v0280 = stack[-4];
3748 popv(6);
3749 fn = elt(env, 10); /* apply */
3750 return (*qfn2(fn))(qenv(fn), v0280, v0274);
3751 }
3752
3753 v0277:
3754 v0274 = qvalue(elt(env, 8)); /* nil */
3755 goto v0279;
3756
3757 v0171:
3758 v0274 = stack[0];
3759 {
3760 popv(6);
3761 fn = elt(env, 11); /* dp!=a2dpatom */
3762 return (*qfn1(fn))(qenv(fn), v0274);
3763 }
3764
3765 v0169:
3766 v0274 = stack[0];
3767 v0274 = qcdr(v0274);
3768 v0274 = qcar(v0274);
3769 v0275 = CC_dp_from_a(env, v0274);
3770 nil = C_nil;
3771 if (exception_pending()) goto v0278;
3772 env = stack[-5];
3773 v0274 = stack[0];
3774 v0274 = qcdr(v0274);
3775 v0274 = qcdr(v0274);
3776 v0274 = qcar(v0274);
3777 {
3778 popv(6);
3779 fn = elt(env, 7); /* dp!=fnpow */
3780 return (*qfn2(fn))(qenv(fn), v0275, v0274);
3781 }
3782
3783 v0251:
3784 v0274 = stack[0];
3785 v0274 = qcar(v0274);
3786 v0274 = Lsymbolp(nil, v0274);
3787 env = stack[-5];
3788 v0274 = (v0274 == nil ? lisp_true : nil);
3789 goto v0243;
3790
3791 v0231:
3792 v0274 = stack[0];
3793 {
3794 popv(6);
3795 fn = elt(env, 11); /* dp!=a2dpatom */
3796 return (*qfn1(fn))(qenv(fn), v0274);
3797 }
3798
3799 v0241:
3800 v0275 = stack[0];
3801 v0274 = elt(env, 3); /* mat */
3802 v0274 = Leqcar(nil, v0275, v0274);
3803 env = stack[-5];
3804 goto v0262;
3805 /* error exit handlers */
3806 v0278:
3807 popv(6);
3808 return nil;
3809 }
3810
3811
3812
3813 /* Code for invbase */
3814
CC_invbase(Lisp_Object env,Lisp_Object v0000)3815 static Lisp_Object CC_invbase(Lisp_Object env,
3816 Lisp_Object v0000)
3817 {
3818 Lisp_Object nil = C_nil;
3819 Lisp_Object v0334, v0206, v0335;
3820 Lisp_Object fn;
3821 CSL_IGNORE(nil);
3822 #ifdef DEBUG
3823 if (check_env(env)) return aerror("env for invbase");
3824 #endif
3825 if (stack >= stacklimit)
3826 {
3827 push(v0000);
3828 env = reclaim(env, "stack", GC_STACK, 0);
3829 pop(v0000);
3830 nil = C_nil;
3831 if (exception_pending()) return nil;
3832 }
3833 push(env);
3834 /* space for vars preserved across procedure calls */
3835 push5(nil, nil, nil, nil, nil);
3836 push5(nil, nil, nil, nil, nil);
3837 /* copy arguments values to proper place */
3838 stack[0] = v0000;
3839 /* end of prologue */
3840 v0334 = stack[0];
3841 v0334 = qcar(v0334);
3842 fn = elt(env, 12); /* reval */
3843 v0334 = (*qfn1(fn))(qenv(fn), v0334);
3844 nil = C_nil;
3845 if (exception_pending()) goto v0336;
3846 env = stack[-10];
3847 stack[0] = v0334;
3848 v0206 = stack[0];
3849 v0334 = elt(env, 1); /* list */
3850 if (!consp(v0206)) goto v0337;
3851 v0206 = qcar(v0206);
3852 if (!(v0206 == v0334)) goto v0337;
3853
3854 v0223:
3855 v0334 = stack[0];
3856 v0334 = qcdr(v0334);
3857 stack[-3] = v0334;
3858 v0334 = stack[-3];
3859 if (v0334 == nil) goto v0246;
3860 v0334 = stack[-3];
3861 v0334 = qcar(v0334);
3862 fn = elt(env, 12); /* reval */
3863 v0334 = (*qfn1(fn))(qenv(fn), v0334);
3864 nil = C_nil;
3865 if (exception_pending()) goto v0336;
3866 env = stack[-10];
3867 v0335 = v0334;
3868 v0206 = elt(env, 5); /* equal */
3869 if (!consp(v0335)) goto v0338;
3870 v0335 = qcar(v0335);
3871 if (!(v0335 == v0206)) goto v0338;
3872 v0335 = elt(env, 6); /* difference */
3873 v0206 = v0334;
3874 v0206 = qcdr(v0206);
3875 v0206 = qcar(v0206);
3876 v0334 = qcdr(v0334);
3877 v0334 = qcdr(v0334);
3878 v0334 = qcar(v0334);
3879 v0334 = list3(v0335, v0206, v0334);
3880 nil = C_nil;
3881 if (exception_pending()) goto v0336;
3882 env = stack[-10];
3883 fn = elt(env, 12); /* reval */
3884 v0334 = (*qfn1(fn))(qenv(fn), v0334);
3885 nil = C_nil;
3886 if (exception_pending()) goto v0336;
3887 env = stack[-10];
3888 goto v0338;
3889
3890 v0338:
3891 v0334 = ncons(v0334);
3892 nil = C_nil;
3893 if (exception_pending()) goto v0336;
3894 env = stack[-10];
3895 stack[-1] = v0334;
3896 stack[-2] = v0334;
3897 goto v0231;
3898
3899 v0231:
3900 v0334 = stack[-3];
3901 v0334 = qcdr(v0334);
3902 stack[-3] = v0334;
3903 v0334 = stack[-3];
3904 if (v0334 == nil) goto v0152;
3905 stack[0] = stack[-1];
3906 v0334 = stack[-3];
3907 v0334 = qcar(v0334);
3908 fn = elt(env, 12); /* reval */
3909 v0334 = (*qfn1(fn))(qenv(fn), v0334);
3910 nil = C_nil;
3911 if (exception_pending()) goto v0336;
3912 env = stack[-10];
3913 v0335 = v0334;
3914 v0206 = elt(env, 5); /* equal */
3915 if (!consp(v0335)) goto v0173;
3916 v0335 = qcar(v0335);
3917 if (!(v0335 == v0206)) goto v0173;
3918 v0335 = elt(env, 6); /* difference */
3919 v0206 = v0334;
3920 v0206 = qcdr(v0206);
3921 v0206 = qcar(v0206);
3922 v0334 = qcdr(v0334);
3923 v0334 = qcdr(v0334);
3924 v0334 = qcar(v0334);
3925 v0334 = list3(v0335, v0206, v0334);
3926 nil = C_nil;
3927 if (exception_pending()) goto v0336;
3928 env = stack[-10];
3929 fn = elt(env, 12); /* reval */
3930 v0334 = (*qfn1(fn))(qenv(fn), v0334);
3931 nil = C_nil;
3932 if (exception_pending()) goto v0336;
3933 env = stack[-10];
3934 goto v0173;
3935
3936 v0173:
3937 v0334 = ncons(v0334);
3938 nil = C_nil;
3939 if (exception_pending()) goto v0336;
3940 env = stack[-10];
3941 v0334 = Lrplacd(nil, stack[0], v0334);
3942 nil = C_nil;
3943 if (exception_pending()) goto v0336;
3944 env = stack[-10];
3945 v0334 = stack[-1];
3946 v0334 = qcdr(v0334);
3947 stack[-1] = v0334;
3948 goto v0231;
3949
3950 v0152:
3951 v0334 = stack[-2];
3952 goto v0232;
3953
3954 v0232:
3955 stack[0] = v0334;
3956 v0334 = qvalue(elt(env, 7)); /* invsysvars!* */
3957 if (!(v0334 == nil)) goto v0142;
3958 v0334 = stack[0];
3959 fn = elt(env, 13); /* gvarlis */
3960 v0334 = (*qfn1(fn))(qenv(fn), v0334);
3961 nil = C_nil;
3962 if (exception_pending()) goto v0336;
3963 env = stack[-10];
3964 goto v0142;
3965
3966 v0142:
3967 stack[-9] = v0334;
3968 v0206 = elt(env, 1); /* list */
3969 v0334 = stack[0];
3970 stack[0] = cons(v0206, v0334);
3971 nil = C_nil;
3972 if (exception_pending()) goto v0336;
3973 env = stack[-10];
3974 v0206 = elt(env, 1); /* list */
3975 v0334 = stack[-9];
3976 v0334 = cons(v0206, v0334);
3977 nil = C_nil;
3978 if (exception_pending()) goto v0336;
3979 env = stack[-10];
3980 fn = elt(env, 14); /* readsys */
3981 v0334 = (*qfn2(fn))(qenv(fn), stack[0], v0334);
3982 nil = C_nil;
3983 if (exception_pending()) goto v0336;
3984 env = stack[-10];
3985 fn = elt(env, 15); /* invbase!* */
3986 v0334 = (*qfnn(fn))(qenv(fn), 0);
3987 nil = C_nil;
3988 if (exception_pending()) goto v0336;
3989 env = stack[-10];
3990 v0334 = qvalue(elt(env, 8)); /* gg */
3991 stack[-8] = v0334;
3992 v0334 = stack[-8];
3993 if (v0334 == nil) goto v0339;
3994 v0334 = stack[-8];
3995 v0334 = qcar(v0334);
3996 stack[-4] = elt(env, 9); /* plus */
3997 v0206 = qvalue(elt(env, 10)); /* gv */
3998 v0334 = qcar(v0334);
3999 v0334 = *(Lisp_Object *)((char *)v0206 + (CELL-TAG_VECTOR) + ((int32_t)v0334/(16/CELL)));
4000 stack[-3] = v0334;
4001 v0334 = stack[-3];
4002 if (v0334 == nil) goto v0340;
4003 v0334 = stack[-3];
4004 v0334 = qcar(v0334);
4005 v0206 = ncons(v0334);
4006 nil = C_nil;
4007 if (exception_pending()) goto v0336;
4008 env = stack[-10];
4009 v0334 = stack[-9];
4010 fn = elt(env, 16); /* !*di2q */
4011 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4012 nil = C_nil;
4013 if (exception_pending()) goto v0336;
4014 env = stack[-10];
4015 v0206 = v0334;
4016 v0334 = v0206;
4017 v0334 = qcar(v0334);
4018 if (v0334 == nil) goto v0341;
4019 v0334 = elt(env, 11); /* prepf */
4020 fn = elt(env, 17); /* sqform */
4021 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4022 nil = C_nil;
4023 if (exception_pending()) goto v0336;
4024 env = stack[-10];
4025 goto v0131;
4026
4027 v0131:
4028 v0334 = ncons(v0334);
4029 nil = C_nil;
4030 if (exception_pending()) goto v0336;
4031 env = stack[-10];
4032 stack[-1] = v0334;
4033 stack[-2] = v0334;
4034 goto v0342;
4035
4036 v0342:
4037 v0334 = stack[-3];
4038 v0334 = qcdr(v0334);
4039 stack[-3] = v0334;
4040 v0334 = stack[-3];
4041 if (v0334 == nil) goto v0343;
4042 stack[0] = stack[-1];
4043 v0334 = stack[-3];
4044 v0334 = qcar(v0334);
4045 v0206 = ncons(v0334);
4046 nil = C_nil;
4047 if (exception_pending()) goto v0336;
4048 env = stack[-10];
4049 v0334 = stack[-9];
4050 fn = elt(env, 16); /* !*di2q */
4051 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4052 nil = C_nil;
4053 if (exception_pending()) goto v0336;
4054 env = stack[-10];
4055 v0206 = v0334;
4056 v0334 = v0206;
4057 v0334 = qcar(v0334);
4058 if (v0334 == nil) goto v0344;
4059 v0334 = elt(env, 11); /* prepf */
4060 fn = elt(env, 17); /* sqform */
4061 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4062 nil = C_nil;
4063 if (exception_pending()) goto v0336;
4064 env = stack[-10];
4065 goto v0122;
4066
4067 v0122:
4068 v0334 = ncons(v0334);
4069 nil = C_nil;
4070 if (exception_pending()) goto v0336;
4071 env = stack[-10];
4072 v0334 = Lrplacd(nil, stack[0], v0334);
4073 nil = C_nil;
4074 if (exception_pending()) goto v0336;
4075 env = stack[-10];
4076 v0334 = stack[-1];
4077 v0334 = qcdr(v0334);
4078 stack[-1] = v0334;
4079 goto v0342;
4080
4081 v0344:
4082 v0334 = (Lisp_Object)1; /* 0 */
4083 goto v0122;
4084
4085 v0343:
4086 v0334 = stack[-2];
4087 goto v0345;
4088
4089 v0345:
4090 v0334 = cons(stack[-4], v0334);
4091 nil = C_nil;
4092 if (exception_pending()) goto v0336;
4093 env = stack[-10];
4094 v0334 = ncons(v0334);
4095 nil = C_nil;
4096 if (exception_pending()) goto v0336;
4097 env = stack[-10];
4098 stack[-6] = v0334;
4099 stack[-7] = v0334;
4100 goto v0278;
4101
4102 v0278:
4103 v0334 = stack[-8];
4104 v0334 = qcdr(v0334);
4105 stack[-8] = v0334;
4106 v0334 = stack[-8];
4107 if (v0334 == nil) goto v0346;
4108 stack[-5] = stack[-6];
4109 v0334 = stack[-8];
4110 v0334 = qcar(v0334);
4111 stack[-4] = elt(env, 9); /* plus */
4112 v0206 = qvalue(elt(env, 10)); /* gv */
4113 v0334 = qcar(v0334);
4114 v0334 = *(Lisp_Object *)((char *)v0206 + (CELL-TAG_VECTOR) + ((int32_t)v0334/(16/CELL)));
4115 stack[-3] = v0334;
4116 v0334 = stack[-3];
4117 if (v0334 == nil) goto v0347;
4118 v0334 = stack[-3];
4119 v0334 = qcar(v0334);
4120 v0206 = ncons(v0334);
4121 nil = C_nil;
4122 if (exception_pending()) goto v0336;
4123 env = stack[-10];
4124 v0334 = stack[-9];
4125 fn = elt(env, 16); /* !*di2q */
4126 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4127 nil = C_nil;
4128 if (exception_pending()) goto v0336;
4129 env = stack[-10];
4130 v0206 = v0334;
4131 v0334 = v0206;
4132 v0334 = qcar(v0334);
4133 if (v0334 == nil) goto v0091;
4134 v0334 = elt(env, 11); /* prepf */
4135 fn = elt(env, 17); /* sqform */
4136 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4137 nil = C_nil;
4138 if (exception_pending()) goto v0336;
4139 env = stack[-10];
4140 goto v0348;
4141
4142 v0348:
4143 v0334 = ncons(v0334);
4144 nil = C_nil;
4145 if (exception_pending()) goto v0336;
4146 env = stack[-10];
4147 stack[-1] = v0334;
4148 stack[-2] = v0334;
4149 goto v0349;
4150
4151 v0349:
4152 v0334 = stack[-3];
4153 v0334 = qcdr(v0334);
4154 stack[-3] = v0334;
4155 v0334 = stack[-3];
4156 if (v0334 == nil) goto v0200;
4157 stack[0] = stack[-1];
4158 v0334 = stack[-3];
4159 v0334 = qcar(v0334);
4160 v0206 = ncons(v0334);
4161 nil = C_nil;
4162 if (exception_pending()) goto v0336;
4163 env = stack[-10];
4164 v0334 = stack[-9];
4165 fn = elt(env, 16); /* !*di2q */
4166 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4167 nil = C_nil;
4168 if (exception_pending()) goto v0336;
4169 env = stack[-10];
4170 v0206 = v0334;
4171 v0334 = v0206;
4172 v0334 = qcar(v0334);
4173 if (v0334 == nil) goto v0350;
4174 v0334 = elt(env, 11); /* prepf */
4175 fn = elt(env, 17); /* sqform */
4176 v0334 = (*qfn2(fn))(qenv(fn), v0206, v0334);
4177 nil = C_nil;
4178 if (exception_pending()) goto v0336;
4179 env = stack[-10];
4180 goto v0351;
4181
4182 v0351:
4183 v0334 = ncons(v0334);
4184 nil = C_nil;
4185 if (exception_pending()) goto v0336;
4186 env = stack[-10];
4187 v0334 = Lrplacd(nil, stack[0], v0334);
4188 nil = C_nil;
4189 if (exception_pending()) goto v0336;
4190 env = stack[-10];
4191 v0334 = stack[-1];
4192 v0334 = qcdr(v0334);
4193 stack[-1] = v0334;
4194 goto v0349;
4195
4196 v0350:
4197 v0334 = (Lisp_Object)1; /* 0 */
4198 goto v0351;
4199
4200 v0200:
4201 v0334 = stack[-2];
4202 goto v0352;
4203
4204 v0352:
4205 v0334 = cons(stack[-4], v0334);
4206 nil = C_nil;
4207 if (exception_pending()) goto v0336;
4208 env = stack[-10];
4209 v0334 = ncons(v0334);
4210 nil = C_nil;
4211 if (exception_pending()) goto v0336;
4212 env = stack[-10];
4213 v0334 = Lrplacd(nil, stack[-5], v0334);
4214 nil = C_nil;
4215 if (exception_pending()) goto v0336;
4216 env = stack[-10];
4217 v0334 = stack[-6];
4218 v0334 = qcdr(v0334);
4219 stack[-6] = v0334;
4220 goto v0278;
4221
4222 v0091:
4223 v0334 = (Lisp_Object)1; /* 0 */
4224 goto v0348;
4225
4226 v0347:
4227 v0334 = qvalue(elt(env, 4)); /* nil */
4228 goto v0352;
4229
4230 v0346:
4231 v0334 = stack[-7];
4232 goto v0353;
4233
4234 v0353:
4235 v0206 = elt(env, 1); /* list */
4236 popv(11);
4237 return cons(v0206, v0334);
4238
4239 v0341:
4240 v0334 = (Lisp_Object)1; /* 0 */
4241 goto v0131;
4242
4243 v0340:
4244 v0334 = qvalue(elt(env, 4)); /* nil */
4245 goto v0345;
4246
4247 v0339:
4248 v0334 = qvalue(elt(env, 4)); /* nil */
4249 goto v0353;
4250
4251 v0246:
4252 v0334 = qvalue(elt(env, 4)); /* nil */
4253 goto v0232;
4254
4255 v0337:
4256 v0334 = qvalue(elt(env, 2)); /* !*protfg */
4257 if (!(v0334 == nil)) goto v0354;
4258 v0334 = elt(env, 3); /* "Argument to invbase not a list" */
4259 fn = elt(env, 18); /* lprie */
4260 v0334 = (*qfn1(fn))(qenv(fn), v0334);
4261 nil = C_nil;
4262 if (exception_pending()) goto v0336;
4263 env = stack[-10];
4264 goto v0354;
4265
4266 v0354:
4267 v0334 = Lerror0(nil, 0);
4268 nil = C_nil;
4269 if (exception_pending()) goto v0336;
4270 env = stack[-10];
4271 goto v0223;
4272 /* error exit handlers */
4273 v0336:
4274 popv(11);
4275 return nil;
4276 }
4277
4278
4279
4280 /* Code for ggvars2 */
4281
CC_ggvars2(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)4282 static Lisp_Object CC_ggvars2(Lisp_Object env,
4283 Lisp_Object v0000, Lisp_Object v0001)
4284 {
4285 Lisp_Object nil = C_nil;
4286 Lisp_Object v0174, v0173, v0261, v0210;
4287 Lisp_Object fn;
4288 CSL_IGNORE(nil);
4289 #ifdef DEBUG
4290 if (check_env(env)) return aerror("env for ggvars2");
4291 #endif
4292 CSL_IGNORE(env);
4293 /* copy arguments values to proper place */
4294 v0261 = v0001;
4295 v0210 = v0000;
4296 /* end of prologue */
4297 v0174 = v0210;
4298 if (v0174 == nil) goto v0220;
4299 v0174 = v0210;
4300 v0174 = (is_number(v0174) ? lisp_true : nil);
4301 if (!(v0174 == nil)) goto v0163;
4302 v0173 = v0210;
4303 v0174 = elt(env, 2); /* i */
4304 if (v0173 == v0174) goto v0241;
4305 v0174 = qvalue(elt(env, 4)); /* nil */
4306 goto v0163;
4307
4308 v0163:
4309 if (!(v0174 == nil)) return onevalue(v0261);
4310 v0174 = v0210;
4311 if (!consp(v0174)) goto v0247;
4312 v0174 = v0210;
4313 v0173 = qcar(v0174);
4314 v0174 = elt(env, 5); /* (plus times expt difference minus quotient)
4315 */
4316 v0174 = Lmemq(nil, v0173, v0174);
4317 if (v0174 == nil) goto v0357;
4318 v0174 = v0210;
4319 v0174 = qcdr(v0174);
4320 v0173 = v0261;
4321 {
4322 fn = elt(env, 6); /* ggvars3 */
4323 return (*qfn2(fn))(qenv(fn), v0174, v0173);
4324 }
4325
4326 v0357:
4327 v0173 = v0210;
4328 v0174 = v0261;
4329 v0174 = Lmember(nil, v0173, v0174);
4330 if (!(v0174 == nil)) return onevalue(v0261);
4331 v0174 = v0210;
4332 v0173 = v0261;
4333 return cons(v0174, v0173);
4334
4335 v0247:
4336 v0173 = v0210;
4337 v0174 = v0261;
4338 v0174 = Lmember(nil, v0173, v0174);
4339 if (!(v0174 == nil)) return onevalue(v0261);
4340 v0174 = v0210;
4341 v0173 = v0261;
4342 return cons(v0174, v0173);
4343
4344 v0241:
4345 v0174 = qvalue(elt(env, 3)); /* !*complex */
4346 goto v0163;
4347
4348 v0220:
4349 v0174 = qvalue(elt(env, 1)); /* t */
4350 goto v0163;
4351 }
4352
4353
4354
4355 /* Code for nrootnn */
4356
CC_nrootnn(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)4357 static Lisp_Object CC_nrootnn(Lisp_Object env,
4358 Lisp_Object v0000, Lisp_Object v0001)
4359 {
4360 Lisp_Object nil = C_nil;
4361 Lisp_Object v0384, v0385;
4362 Lisp_Object fn;
4363 CSL_IGNORE(nil);
4364 #ifdef DEBUG
4365 if (check_env(env)) return aerror("env for nrootnn");
4366 #endif
4367 if (stack >= stacklimit)
4368 {
4369 push2(v0001,v0000);
4370 env = reclaim(env, "stack", GC_STACK, 0);
4371 pop2(v0000,v0001);
4372 nil = C_nil;
4373 if (exception_pending()) return nil;
4374 }
4375 push(env);
4376 /* space for vars preserved across procedure calls */
4377 push5(nil, nil, nil, nil, nil);
4378 push4(nil, nil, nil, nil);
4379 /* copy arguments values to proper place */
4380 stack[-6] = v0001;
4381 stack[-7] = v0000;
4382 /* end of prologue */
4383 stack[-5] = nil;
4384 v0384 = (Lisp_Object)17; /* 1 */
4385 stack[0] = v0384;
4386 v0384 = (Lisp_Object)17; /* 1 */
4387 stack[-2] = v0384;
4388 v0385 = stack[-7];
4389 v0384 = (Lisp_Object)1; /* 0 */
4390 v0384 = (Lisp_Object)lessp2(v0385, v0384);
4391 nil = C_nil;
4392 if (exception_pending()) goto v0386;
4393 v0384 = v0384 ? lisp_true : nil;
4394 env = stack[-9];
4395 if (v0384 == nil) goto v0241;
4396 v0384 = stack[-7];
4397 v0384 = negate(v0384);
4398 nil = C_nil;
4399 if (exception_pending()) goto v0386;
4400 env = stack[-9];
4401 stack[-7] = v0384;
4402 v0384 = stack[-6];
4403 v0384 = Levenp(nil, v0384);
4404 env = stack[-9];
4405 if (v0384 == nil) goto v0246;
4406 v0384 = qvalue(elt(env, 1)); /* t */
4407 stack[-5] = v0384;
4408 goto v0241;
4409
4410 v0241:
4411 v0384 = qvalue(elt(env, 2)); /* !*primelist!* */
4412 stack[-8] = v0384;
4413 goto v0387;
4414
4415 v0387:
4416 v0384 = stack[-8];
4417 v0384 = qcar(v0384);
4418 stack[-1] = v0384;
4419 v0384 = stack[-8];
4420 v0384 = qcdr(v0384);
4421 stack[-8] = v0384;
4422 v0384 = (Lisp_Object)1; /* 0 */
4423 stack[-3] = v0384;
4424 goto v0157;
4425
4426 v0157:
4427 v0385 = stack[-7];
4428 v0384 = stack[-1];
4429 v0384 = Ldivide(nil, v0385, v0384);
4430 nil = C_nil;
4431 if (exception_pending()) goto v0386;
4432 env = stack[-9];
4433 stack[-4] = v0384;
4434 v0385 = qcdr(v0384);
4435 v0384 = (Lisp_Object)1; /* 0 */
4436 if (v0385 == v0384) goto v0218;
4437 v0385 = stack[-3];
4438 v0384 = stack[-6];
4439 if (((int32_t)(v0385)) < ((int32_t)(v0384))) goto v0388;
4440 v0385 = stack[-3];
4441 v0384 = stack[-6];
4442 v0384 = Ldivide(nil, v0385, v0384);
4443 nil = C_nil;
4444 if (exception_pending()) goto v0386;
4445 env = stack[-9];
4446 stack[-3] = v0384;
4447 v0385 = stack[-1];
4448 v0384 = stack[-3];
4449 v0384 = qcar(v0384);
4450 v0384 = Lexpt(nil, v0385, v0384);
4451 nil = C_nil;
4452 if (exception_pending()) goto v0386;
4453 env = stack[-9];
4454 v0384 = times2(stack[0], v0384);
4455 nil = C_nil;
4456 if (exception_pending()) goto v0386;
4457 env = stack[-9];
4458 stack[0] = v0384;
4459 v0384 = stack[-3];
4460 v0384 = qcdr(v0384);
4461 stack[-3] = v0384;
4462 goto v0388;
4463
4464 v0388:
4465 v0385 = stack[-3];
4466 v0384 = (Lisp_Object)1; /* 0 */
4467 if (((int32_t)(v0385)) > ((int32_t)(v0384))) goto v0329;
4468 v0384 = stack[-4];
4469 v0385 = qcar(v0384);
4470 v0384 = stack[-1];
4471 v0384 = (Lisp_Object)lessp2(v0385, v0384);
4472 nil = C_nil;
4473 if (exception_pending()) goto v0386;
4474 v0384 = v0384 ? lisp_true : nil;
4475 env = stack[-9];
4476 if (v0384 == nil) goto v0389;
4477 v0385 = stack[-7];
4478 v0384 = stack[-2];
4479 v0384 = times2(v0385, v0384);
4480 nil = C_nil;
4481 if (exception_pending()) goto v0386;
4482 env = stack[-9];
4483 stack[-2] = v0384;
4484 goto v0390;
4485
4486 v0390:
4487 v0384 = stack[-5];
4488 if (v0384 == nil) goto v0108;
4489 v0384 = stack[-2];
4490 v0384 = negate(v0384);
4491 nil = C_nil;
4492 if (exception_pending()) goto v0386;
4493 stack[-2] = v0384;
4494 goto v0108;
4495
4496 v0108:
4497 v0385 = stack[0];
4498 v0384 = stack[-2];
4499 popv(10);
4500 return cons(v0385, v0384);
4501
4502 v0389:
4503 v0384 = stack[-8];
4504 if (!(v0384 == nil)) goto v0387;
4505 v0385 = (Lisp_Object)161; /* 10 */
4506 v0384 = (Lisp_Object)321; /* 20 */
4507 v0385 = Lexpt(nil, v0385, v0384);
4508 nil = C_nil;
4509 if (exception_pending()) goto v0386;
4510 env = stack[-9];
4511 v0384 = stack[-7];
4512 v0384 = (Lisp_Object)greaterp2(v0385, v0384);
4513 nil = C_nil;
4514 if (exception_pending()) goto v0386;
4515 v0384 = v0384 ? lisp_true : nil;
4516 env = stack[-9];
4517 if (v0384 == nil) goto v0123;
4518 v0385 = stack[-7];
4519 v0384 = qvalue(elt(env, 3)); /* nil */
4520 fn = elt(env, 4); /* mcfactor!* */
4521 v0384 = (*qfn2(fn))(qenv(fn), v0385, v0384);
4522 nil = C_nil;
4523 if (exception_pending()) goto v0386;
4524 env = stack[-9];
4525 stack[-3] = v0384;
4526 v0384 = stack[-3];
4527 stack[-4] = v0384;
4528 goto v0136;
4529
4530 v0136:
4531 v0384 = stack[-4];
4532 if (v0384 == nil) goto v0390;
4533 v0384 = stack[-4];
4534 v0384 = qcar(v0384);
4535 stack[-1] = v0384;
4536 v0384 = stack[-1];
4537 v0385 = qcdr(v0384);
4538 v0384 = stack[-6];
4539 v0384 = Ldivide(nil, v0385, v0384);
4540 nil = C_nil;
4541 if (exception_pending()) goto v0386;
4542 env = stack[-9];
4543 stack[-3] = v0384;
4544 v0384 = stack[-1];
4545 v0385 = qcar(v0384);
4546 v0384 = stack[-3];
4547 v0384 = qcar(v0384);
4548 v0385 = Lexpt(nil, v0385, v0384);
4549 nil = C_nil;
4550 if (exception_pending()) goto v0386;
4551 env = stack[-9];
4552 v0384 = stack[0];
4553 v0384 = times2(v0385, v0384);
4554 nil = C_nil;
4555 if (exception_pending()) goto v0386;
4556 env = stack[-9];
4557 stack[0] = v0384;
4558 v0384 = stack[-1];
4559 v0385 = qcar(v0384);
4560 v0384 = stack[-3];
4561 v0384 = qcdr(v0384);
4562 v0385 = Lexpt(nil, v0385, v0384);
4563 nil = C_nil;
4564 if (exception_pending()) goto v0386;
4565 env = stack[-9];
4566 v0384 = stack[-2];
4567 v0384 = times2(v0385, v0384);
4568 nil = C_nil;
4569 if (exception_pending()) goto v0386;
4570 env = stack[-9];
4571 stack[-2] = v0384;
4572 v0384 = stack[-4];
4573 v0384 = qcdr(v0384);
4574 stack[-4] = v0384;
4575 goto v0136;
4576
4577 v0123:
4578 v0385 = stack[-7];
4579 v0384 = stack[-6];
4580 fn = elt(env, 5); /* irootn */
4581 v0384 = (*qfn2(fn))(qenv(fn), v0385, v0384);
4582 nil = C_nil;
4583 if (exception_pending()) goto v0386;
4584 env = stack[-9];
4585 stack[-1] = v0384;
4586 v0385 = stack[-1];
4587 v0384 = stack[-6];
4588 v0385 = Lexpt(nil, v0385, v0384);
4589 nil = C_nil;
4590 if (exception_pending()) goto v0386;
4591 env = stack[-9];
4592 v0384 = stack[-7];
4593 if (equal(v0385, v0384)) goto v0312;
4594 v0384 = qvalue(elt(env, 3)); /* nil */
4595 goto v0391;
4596
4597 v0391:
4598 stack[-3] = v0384;
4599 if (v0384 == nil) goto v0392;
4600 v0385 = stack[0];
4601 v0384 = stack[-3];
4602 v0384 = times2(v0385, v0384);
4603 nil = C_nil;
4604 if (exception_pending()) goto v0386;
4605 env = stack[-9];
4606 stack[0] = v0384;
4607 goto v0390;
4608
4609 v0392:
4610 v0385 = stack[-7];
4611 v0384 = stack[-2];
4612 v0384 = times2(v0385, v0384);
4613 nil = C_nil;
4614 if (exception_pending()) goto v0386;
4615 env = stack[-9];
4616 stack[-2] = v0384;
4617 goto v0390;
4618
4619 v0312:
4620 v0384 = stack[-1];
4621 goto v0391;
4622
4623 v0329:
4624 v0385 = stack[-2];
4625 v0384 = stack[-1];
4626 v0384 = times2(v0385, v0384);
4627 nil = C_nil;
4628 if (exception_pending()) goto v0386;
4629 env = stack[-9];
4630 stack[-2] = v0384;
4631 v0384 = stack[-3];
4632 v0384 = (Lisp_Object)((int32_t)(v0384) - 0x10);
4633 stack[-3] = v0384;
4634 goto v0388;
4635
4636 v0218:
4637 v0384 = stack[-4];
4638 v0384 = qcar(v0384);
4639 stack[-7] = v0384;
4640 v0384 = stack[-3];
4641 v0384 = (Lisp_Object)((int32_t)(v0384) + 0x10);
4642 stack[-3] = v0384;
4643 goto v0157;
4644
4645 v0246:
4646 v0384 = (Lisp_Object)-15; /* -1 */
4647 stack[0] = v0384;
4648 goto v0241;
4649 /* error exit handlers */
4650 v0386:
4651 popv(10);
4652 return nil;
4653 }
4654
4655
4656
4657 /* Code for evaluate!-in!-vector */
4658
CC_evaluateKinKvector(Lisp_Object env,int nargs,Lisp_Object v0000,Lisp_Object v0001,Lisp_Object v0211,...)4659 static Lisp_Object MS_CDECL CC_evaluateKinKvector(Lisp_Object env, int nargs,
4660 Lisp_Object v0000, Lisp_Object v0001,
4661 Lisp_Object v0211, ...)
4662 {
4663 Lisp_Object nil = C_nil;
4664 Lisp_Object v0338, v0217, v0218, v0155, v0156, v0237;
4665 CSL_IGNORE(nil);
4666 argcheck(nargs, 3, "evaluate-in-vector");
4667 #ifdef DEBUG
4668 if (check_env(env)) return aerror("env for evaluate-in-vector");
4669 #endif
4670 if (stack >= stacklimit)
4671 {
4672 push3(v0211,v0001,v0000);
4673 env = reclaim(env, "stack", GC_STACK, 0);
4674 pop3(v0000,v0001,v0211);
4675 nil = C_nil;
4676 if (exception_pending()) return nil;
4677 }
4678 push(env);
4679 /* copy arguments values to proper place */
4680 v0155 = v0211;
4681 v0218 = v0001;
4682 v0156 = v0000;
4683 /* end of prologue */
4684 v0217 = v0156;
4685 v0338 = v0218;
4686 v0338 = *(Lisp_Object *)((char *)v0217 + (CELL-TAG_VECTOR) + ((int32_t)v0338/(16/CELL)));
4687 v0217 = v0338;
4688 v0338 = v0218;
4689 v0338 = (Lisp_Object)((int32_t)(v0338) - 0x10);
4690 v0237 = v0338;
4691 goto v0395;
4692
4693 v0395:
4694 v0338 = v0237;
4695 v0338 = ((intptr_t)(v0338) < 0 ? lisp_true : nil);
4696 if (!(v0338 == nil)) { popv(1); return onevalue(v0217); }
4697 v0218 = v0156;
4698 v0338 = v0237;
4699 v0218 = *(Lisp_Object *)((char *)v0218 + (CELL-TAG_VECTOR) + ((int32_t)v0338/(16/CELL)));
4700 v0338 = v0155;
4701 v0338 = Lmodular_times(nil, v0217, v0338);
4702 env = stack[0];
4703 { int32_t w = int_of_fixnum(v0218) + int_of_fixnum(v0338);
4704 if (w >= current_modulus) w -= current_modulus;
4705 v0338 = fixnum_of_int(w);
4706 }
4707 v0217 = v0338;
4708 v0338 = v0237;
4709 v0338 = (Lisp_Object)((int32_t)(v0338) - 0x10);
4710 v0237 = v0338;
4711 goto v0395;
4712 }
4713
4714
4715
4716 /* Code for repr_atfnew */
4717
CC_repr_atfnew(Lisp_Object env,int nargs,Lisp_Object v0000,Lisp_Object v0001,Lisp_Object v0211,...)4718 static Lisp_Object MS_CDECL CC_repr_atfnew(Lisp_Object env, int nargs,
4719 Lisp_Object v0000, Lisp_Object v0001,
4720 Lisp_Object v0211, ...)
4721 {
4722 Lisp_Object nil = C_nil;
4723 Lisp_Object v0141, v0140, v0326, v0229;
4724 Lisp_Object fn;
4725 CSL_IGNORE(nil);
4726 argcheck(nargs, 3, "repr_atfnew");
4727 #ifdef DEBUG
4728 if (check_env(env)) return aerror("env for repr_atfnew");
4729 #endif
4730 if (stack >= stacklimit)
4731 {
4732 push3(v0211,v0001,v0000);
4733 env = reclaim(env, "stack", GC_STACK, 0);
4734 pop3(v0000,v0001,v0211);
4735 nil = C_nil;
4736 if (exception_pending()) return nil;
4737 }
4738 push(env);
4739 /* space for vars preserved across procedure calls */
4740 push5(nil, nil, nil, nil, nil);
4741 push2(nil, nil);
4742 /* copy arguments values to proper place */
4743 stack[-5] = v0211;
4744 v0141 = v0001;
4745 stack[0] = v0000;
4746 /* end of prologue */
4747 v0140 = stack[0];
4748 v0140 = qcar(v0140);
4749 stack[-6] = v0140;
4750 v0140 = stack[0];
4751 v0140 = qcdr(v0140);
4752 v0140 = qcar(v0140);
4753 fn = elt(env, 3); /* pasf_coeflst */
4754 v0141 = (*qfn2(fn))(qenv(fn), v0140, v0141);
4755 nil = C_nil;
4756 if (exception_pending()) goto v0303;
4757 env = stack[-7];
4758 stack[-1] = v0141;
4759 v0141 = stack[-1];
4760 v0141 = qcar(v0141);
4761 v0141 = qcar(v0141);
4762 fn = elt(env, 4); /* minusf */
4763 v0141 = (*qfn1(fn))(qenv(fn), v0141);
4764 nil = C_nil;
4765 if (exception_pending()) goto v0303;
4766 env = stack[-7];
4767 if (v0141 == nil) goto v0403;
4768 v0141 = stack[0];
4769 v0141 = Lconsp(nil, v0141);
4770 env = stack[-7];
4771 if (v0141 == nil) goto v0333;
4772 v0141 = stack[0];
4773 v0141 = qcar(v0141);
4774 v0141 = Lconsp(nil, v0141);
4775 env = stack[-7];
4776 if (v0141 == nil) goto v0333;
4777 v0141 = stack[0];
4778 v0141 = qcar(v0141);
4779 v0140 = qcar(v0141);
4780 v0141 = elt(env, 1); /* (cong ncong) */
4781 v0141 = Lmemq(nil, v0140, v0141);
4782 if (v0141 == nil) goto v0333;
4783 v0141 = stack[-6];
4784 v0141 = qcar(v0141);
4785 fn = elt(env, 5); /* pasf_anegrel */
4786 v0140 = (*qfn1(fn))(qenv(fn), v0141);
4787 nil = C_nil;
4788 if (exception_pending()) goto v0303;
4789 env = stack[-7];
4790 v0141 = stack[-6];
4791 v0141 = qcdr(v0141);
4792 v0141 = cons(v0140, v0141);
4793 nil = C_nil;
4794 if (exception_pending()) goto v0303;
4795 env = stack[-7];
4796 goto v0356;
4797
4798 v0356:
4799 stack[-6] = v0141;
4800 v0141 = stack[-1];
4801 stack[-4] = v0141;
4802 v0141 = stack[-4];
4803 if (v0141 == nil) goto v0153;
4804 v0141 = stack[-4];
4805 v0141 = qcar(v0141);
4806 stack[0] = v0141;
4807 v0141 = stack[0];
4808 v0140 = qcar(v0141);
4809 v0141 = (Lisp_Object)-15; /* -1 */
4810 fn = elt(env, 6); /* multf */
4811 v0140 = (*qfn2(fn))(qenv(fn), v0140, v0141);
4812 nil = C_nil;
4813 if (exception_pending()) goto v0303;
4814 env = stack[-7];
4815 v0141 = stack[0];
4816 v0141 = qcdr(v0141);
4817 v0141 = cons(v0140, v0141);
4818 nil = C_nil;
4819 if (exception_pending()) goto v0303;
4820 env = stack[-7];
4821 v0141 = ncons(v0141);
4822 nil = C_nil;
4823 if (exception_pending()) goto v0303;
4824 env = stack[-7];
4825 stack[-2] = v0141;
4826 stack[-3] = v0141;
4827 goto v0238;
4828
4829 v0238:
4830 v0141 = stack[-4];
4831 v0141 = qcdr(v0141);
4832 stack[-4] = v0141;
4833 v0141 = stack[-4];
4834 if (v0141 == nil) goto v0173;
4835 stack[-1] = stack[-2];
4836 v0141 = stack[-4];
4837 v0141 = qcar(v0141);
4838 stack[0] = v0141;
4839 v0141 = stack[0];
4840 v0140 = qcar(v0141);
4841 v0141 = (Lisp_Object)-15; /* -1 */
4842 fn = elt(env, 6); /* multf */
4843 v0140 = (*qfn2(fn))(qenv(fn), v0140, v0141);
4844 nil = C_nil;
4845 if (exception_pending()) goto v0303;
4846 env = stack[-7];
4847 v0141 = stack[0];
4848 v0141 = qcdr(v0141);
4849 v0141 = cons(v0140, v0141);
4850 nil = C_nil;
4851 if (exception_pending()) goto v0303;
4852 env = stack[-7];
4853 v0141 = ncons(v0141);
4854 nil = C_nil;
4855 if (exception_pending()) goto v0303;
4856 env = stack[-7];
4857 v0141 = Lrplacd(nil, stack[-1], v0141);
4858 nil = C_nil;
4859 if (exception_pending()) goto v0303;
4860 env = stack[-7];
4861 v0141 = stack[-2];
4862 v0141 = qcdr(v0141);
4863 stack[-2] = v0141;
4864 goto v0238;
4865
4866 v0173:
4867 v0141 = stack[-3];
4868 goto v0216;
4869
4870 v0216:
4871 stack[-1] = v0141;
4872 goto v0403;
4873
4874 v0403:
4875 v0229 = stack[-5];
4876 v0326 = stack[-6];
4877 v0140 = stack[-1];
4878 v0141 = qvalue(elt(env, 2)); /* nil */
4879 {
4880 popv(8);
4881 fn = elt(env, 7); /* repr_new */
4882 return (*qfnn(fn))(qenv(fn), 4, v0229, v0326, v0140, v0141);
4883 }
4884
4885 v0153:
4886 v0141 = qvalue(elt(env, 2)); /* nil */
4887 goto v0216;
4888
4889 v0333:
4890 v0141 = stack[-6];
4891 fn = elt(env, 5); /* pasf_anegrel */
4892 v0141 = (*qfn1(fn))(qenv(fn), v0141);
4893 nil = C_nil;
4894 if (exception_pending()) goto v0303;
4895 env = stack[-7];
4896 goto v0356;
4897 /* error exit handlers */
4898 v0303:
4899 popv(8);
4900 return nil;
4901 }
4902
4903
4904
4905 /* Code for aex_1 */
4906
CC_aex_1(Lisp_Object env,int nargs,...)4907 static Lisp_Object MS_CDECL CC_aex_1(Lisp_Object env, int nargs, ...)
4908 {
4909 Lisp_Object nil = C_nil;
4910 Lisp_Object v0292;
4911 Lisp_Object fn;
4912 CSL_IGNORE(nil);
4913 argcheck(nargs, 0, "aex_1");
4914 #ifdef DEBUG
4915 if (check_env(env)) return aerror("env for aex_1");
4916 #endif
4917 if (stack >= stacklimit)
4918 {
4919 env = reclaim(env, "stack", GC_STACK, 0);
4920 nil = C_nil;
4921 if (exception_pending()) return nil;
4922 }
4923 push(env);
4924 /* end of prologue */
4925 fn = elt(env, 1); /* ratpoly_1 */
4926 v0292 = (*qfnn(fn))(qenv(fn), 0);
4927 nil = C_nil;
4928 if (exception_pending()) goto v0239;
4929 env = stack[0];
4930 {
4931 popv(1);
4932 fn = elt(env, 2); /* aex_fromrp */
4933 return (*qfn1(fn))(qenv(fn), v0292);
4934 }
4935 /* error exit handlers */
4936 v0239:
4937 popv(1);
4938 return nil;
4939 }
4940
4941
4942
4943 /* Code for partialdiff */
4944
CC_partialdiff(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)4945 static Lisp_Object CC_partialdiff(Lisp_Object env,
4946 Lisp_Object v0000, Lisp_Object v0001)
4947 {
4948 Lisp_Object nil = C_nil;
4949 Lisp_Object v0407, v0403;
4950 Lisp_Object fn;
4951 CSL_IGNORE(nil);
4952 #ifdef DEBUG
4953 if (check_env(env)) return aerror("env for partialdiff");
4954 #endif
4955 if (stack >= stacklimit)
4956 {
4957 push2(v0001,v0000);
4958 env = reclaim(env, "stack", GC_STACK, 0);
4959 pop2(v0000,v0001);
4960 nil = C_nil;
4961 if (exception_pending()) return nil;
4962 }
4963 push(env);
4964 /* space for vars preserved across procedure calls */
4965 push4(nil, nil, nil, nil);
4966 /* copy arguments values to proper place */
4967 stack[-1] = v0001;
4968 stack[-2] = v0000;
4969 /* end of prologue */
4970
4971 v0222:
4972 v0407 = stack[-2];
4973 if (!consp(v0407)) goto v0220;
4974 v0407 = stack[-2];
4975 v0407 = qcar(v0407);
4976 v0407 = (consp(v0407) ? nil : lisp_true);
4977 goto v0163;
4978
4979 v0163:
4980 if (v0407 == nil) goto v0234;
4981 v0407 = qvalue(elt(env, 2)); /* nil */
4982 { popv(5); return onevalue(v0407); }
4983
4984 v0234:
4985 v0403 = stack[-1];
4986 v0407 = stack[-2];
4987 v0407 = qcar(v0407);
4988 v0407 = qcar(v0407);
4989 v0407 = qcar(v0407);
4990 if (equal(v0403, v0407)) goto v0233;
4991 v0407 = stack[-2];
4992 v0407 = qcar(v0407);
4993 v0403 = qcdr(v0407);
4994 v0407 = stack[-1];
4995 v0407 = CC_partialdiff(env, v0403, v0407);
4996 nil = C_nil;
4997 if (exception_pending()) goto v0145;
4998 env = stack[-4];
4999 v0403 = v0407;
5000 v0407 = v0403;
5001 if (v0407 == nil) goto v0408;
5002 v0407 = stack[-2];
5003 v0407 = qcar(v0407);
5004 stack[-3] = qcar(v0407);
5005 stack[0] = v0403;
5006 v0407 = stack[-2];
5007 v0403 = qcdr(v0407);
5008 v0407 = stack[-1];
5009 v0407 = CC_partialdiff(env, v0403, v0407);
5010 nil = C_nil;
5011 if (exception_pending()) goto v0145;
5012 {
5013 Lisp_Object v0409 = stack[-3];
5014 Lisp_Object v0325 = stack[0];
5015 popv(5);
5016 return acons(v0409, v0325, v0407);
5017 }
5018
5019 v0408:
5020 v0407 = stack[-2];
5021 v0403 = qcdr(v0407);
5022 v0407 = stack[-1];
5023 stack[-2] = v0403;
5024 stack[-1] = v0407;
5025 goto v0222;
5026
5027 v0233:
5028 v0407 = stack[-2];
5029 v0407 = qcar(v0407);
5030 v0407 = qcar(v0407);
5031 v0407 = qcdr(v0407);
5032 stack[0] = v0407;
5033 v0403 = stack[0];
5034 v0407 = (Lisp_Object)17; /* 1 */
5035 if (v0403 == v0407) goto v0259;
5036 v0407 = stack[-1];
5037 fn = elt(env, 3); /* fkern */
5038 stack[-3] = (*qfn1(fn))(qenv(fn), v0407);
5039 nil = C_nil;
5040 if (exception_pending()) goto v0145;
5041 env = stack[-4];
5042 v0407 = stack[0];
5043 v0407 = sub1(v0407);
5044 nil = C_nil;
5045 if (exception_pending()) goto v0145;
5046 env = stack[-4];
5047 fn = elt(env, 4); /* getpower */
5048 stack[-3] = (*qfn2(fn))(qenv(fn), stack[-3], v0407);
5049 nil = C_nil;
5050 if (exception_pending()) goto v0145;
5051 env = stack[-4];
5052 v0403 = stack[0];
5053 v0407 = stack[-2];
5054 v0407 = qcar(v0407);
5055 v0407 = qcdr(v0407);
5056 fn = elt(env, 5); /* multd */
5057 stack[0] = (*qfn2(fn))(qenv(fn), v0403, v0407);
5058 nil = C_nil;
5059 if (exception_pending()) goto v0145;
5060 env = stack[-4];
5061 v0407 = stack[-2];
5062 v0403 = qcdr(v0407);
5063 v0407 = stack[-1];
5064 v0407 = CC_partialdiff(env, v0403, v0407);
5065 nil = C_nil;
5066 if (exception_pending()) goto v0145;
5067 {
5068 Lisp_Object v0266 = stack[-3];
5069 Lisp_Object v0267 = stack[0];
5070 popv(5);
5071 return acons(v0266, v0267, v0407);
5072 }
5073
5074 v0259:
5075 v0407 = stack[-2];
5076 v0407 = qcar(v0407);
5077 v0407 = qcdr(v0407);
5078 { popv(5); return onevalue(v0407); }
5079
5080 v0220:
5081 v0407 = qvalue(elt(env, 1)); /* t */
5082 goto v0163;
5083 /* error exit handlers */
5084 v0145:
5085 popv(5);
5086 return nil;
5087 }
5088
5089
5090
5091 /* Code for transferrow */
5092
CC_transferrow(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)5093 static Lisp_Object CC_transferrow(Lisp_Object env,
5094 Lisp_Object v0000, Lisp_Object v0001)
5095 {
5096 Lisp_Object nil = C_nil;
5097 Lisp_Object v0264, v0268;
5098 Lisp_Object fn;
5099 CSL_IGNORE(nil);
5100 #ifdef DEBUG
5101 if (check_env(env)) return aerror("env for transferrow");
5102 #endif
5103 if (stack >= stacklimit)
5104 {
5105 push2(v0001,v0000);
5106 env = reclaim(env, "stack", GC_STACK, 0);
5107 pop2(v0000,v0001);
5108 nil = C_nil;
5109 if (exception_pending()) return nil;
5110 }
5111 push(env);
5112 /* space for vars preserved across procedure calls */
5113 push4(nil, nil, nil, nil);
5114 /* copy arguments values to proper place */
5115 stack[0] = v0001;
5116 stack[-2] = v0000;
5117 /* end of prologue */
5118 stack[-1] = qvalue(elt(env, 1)); /* codmat */
5119 v0268 = qvalue(elt(env, 2)); /* maxvar */
5120 v0264 = stack[-2];
5121 v0264 = plus2(v0268, v0264);
5122 nil = C_nil;
5123 if (exception_pending()) goto v0149;
5124 env = stack[-4];
5125 v0268 = *(Lisp_Object *)((char *)stack[-1] + (CELL-TAG_VECTOR) + ((int32_t)v0264/(16/CELL)));
5126 v0264 = (Lisp_Object)33; /* 2 */
5127 v0268 = *(Lisp_Object *)((char *)v0268 + (CELL-TAG_VECTOR) + ((int32_t)v0264/(16/CELL)));
5128 v0264 = elt(env, 3); /* plus */
5129 if (v0268 == v0264) goto v0162;
5130 v0264 = stack[-2];
5131 fn = elt(env, 6); /* transferrow1 */
5132 v0264 = (*qfn1(fn))(qenv(fn), v0264);
5133 nil = C_nil;
5134 if (exception_pending()) goto v0149;
5135 env = stack[-4];
5136 if (v0264 == nil) goto v0416;
5137 v0268 = stack[-2];
5138 v0264 = stack[0];
5139 {
5140 popv(5);
5141 fn = elt(env, 7); /* transferrow2 */
5142 return (*qfn2(fn))(qenv(fn), v0268, v0264);
5143 }
5144
5145 v0416:
5146 v0264 = qvalue(elt(env, 4)); /* nil */
5147 { popv(5); return onevalue(v0264); }
5148
5149 v0162:
5150 v0264 = stack[-2];
5151 fn = elt(env, 6); /* transferrow1 */
5152 v0264 = (*qfn1(fn))(qenv(fn), v0264);
5153 nil = C_nil;
5154 if (exception_pending()) goto v0149;
5155 env = stack[-4];
5156 if (v0264 == nil) goto v0231;
5157 stack[-3] = qvalue(elt(env, 1)); /* codmat */
5158 stack[-1] = qvalue(elt(env, 2)); /* maxvar */
5159 stack[0] = qvalue(elt(env, 1)); /* codmat */
5160 v0268 = qvalue(elt(env, 2)); /* maxvar */
5161 v0264 = stack[-2];
5162 v0264 = plus2(v0268, v0264);
5163 nil = C_nil;
5164 if (exception_pending()) goto v0149;
5165 env = stack[-4];
5166 v0268 = *(Lisp_Object *)((char *)stack[0] + (CELL-TAG_VECTOR) + ((int32_t)v0264/(16/CELL)));
5167 v0264 = (Lisp_Object)49; /* 3 */
5168 v0264 = *(Lisp_Object *)((char *)v0268 + (CELL-TAG_VECTOR) + ((int32_t)v0264/(16/CELL)));
5169 v0264 = plus2(stack[-1], v0264);
5170 nil = C_nil;
5171 if (exception_pending()) goto v0149;
5172 env = stack[-4];
5173 v0268 = *(Lisp_Object *)((char *)stack[-3] + (CELL-TAG_VECTOR) + ((int32_t)v0264/(16/CELL)));
5174 v0264 = (Lisp_Object)33; /* 2 */
5175 v0264 = *(Lisp_Object *)((char *)v0268 + (CELL-TAG_VECTOR) + ((int32_t)v0264/(16/CELL)));
5176 v0268 = elt(env, 5); /* times */
5177 v0264 = (v0264 == v0268 ? lisp_true : nil);
5178 { popv(5); return onevalue(v0264); }
5179
5180 v0231:
5181 v0264 = qvalue(elt(env, 4)); /* nil */
5182 { popv(5); return onevalue(v0264); }
5183 /* error exit handlers */
5184 v0149:
5185 popv(5);
5186 return nil;
5187 }
5188
5189
5190
5191 /* Code for xregister_spoly_pair */
5192
CC_xregister_spoly_pair(Lisp_Object env,int nargs,...)5193 static Lisp_Object MS_CDECL CC_xregister_spoly_pair(Lisp_Object env, int nargs, ...)
5194 {
5195 Lisp_Object v0211;
5196 argcheck(nargs, 0, "xregister_spoly_pair");
5197 #ifdef DEBUG
5198 if (check_env(env)) return aerror("env for xregister_spoly_pair");
5199 #endif
5200 CSL_IGNORE(env);
5201 /* end of prologue */
5202 v0211 = qvalue(elt(env, 1)); /* nil */
5203 return onevalue(v0211);
5204 }
5205
5206
5207
5208 /* Code for evalsetbool */
5209
CC_evalsetbool(Lisp_Object env,int nargs,Lisp_Object v0000,Lisp_Object v0001,Lisp_Object v0211,...)5210 static Lisp_Object MS_CDECL CC_evalsetbool(Lisp_Object env, int nargs,
5211 Lisp_Object v0000, Lisp_Object v0001,
5212 Lisp_Object v0211, ...)
5213 {
5214 Lisp_Object nil = C_nil;
5215 Lisp_Object v0340, v0369, v0134, v0135;
5216 Lisp_Object fn;
5217 CSL_IGNORE(nil);
5218 argcheck(nargs, 3, "evalsetbool");
5219 #ifdef DEBUG
5220 if (check_env(env)) return aerror("env for evalsetbool");
5221 #endif
5222 if (stack >= stacklimit)
5223 {
5224 push3(v0211,v0001,v0000);
5225 env = reclaim(env, "stack", GC_STACK, 0);
5226 pop3(v0000,v0001,v0211);
5227 nil = C_nil;
5228 if (exception_pending()) return nil;
5229 }
5230 push(env);
5231 /* space for vars preserved across procedure calls */
5232 push5(nil, nil, nil, nil, nil);
5233 push4(nil, nil, nil, nil);
5234 /* copy arguments values to proper place */
5235 stack[-5] = v0211;
5236 stack[-6] = v0001;
5237 stack[-7] = v0000;
5238 /* end of prologue */
5239 stack[-8] = nil;
5240 stack[-4] = nil;
5241 v0369 = stack[-6];
5242 v0340 = stack[-5];
5243 v0340 = list2(v0369, v0340);
5244 nil = C_nil;
5245 if (exception_pending()) goto v0425;
5246 env = stack[-9];
5247 stack[-3] = v0340;
5248 v0340 = stack[-3];
5249 if (v0340 == nil) goto v0354;
5250 v0340 = stack[-3];
5251 v0340 = qcar(v0340);
5252 v0134 = v0340;
5253 v0369 = v0134;
5254 v0340 = elt(env, 2); /* list */
5255 if (!consp(v0369)) goto v0232;
5256 v0369 = qcar(v0369);
5257 if (!(v0369 == v0340)) goto v0232;
5258 v0340 = qvalue(elt(env, 3)); /* t */
5259 stack[-8] = v0340;
5260 v0340 = v0134;
5261 v0340 = qcdr(v0340);
5262 goto v0330;
5263
5264 v0330:
5265 v0340 = ncons(v0340);
5266 nil = C_nil;
5267 if (exception_pending()) goto v0425;
5268 env = stack[-9];
5269 stack[-1] = v0340;
5270 stack[-2] = v0340;
5271 goto v0390;
5272
5273 v0390:
5274 v0340 = stack[-3];
5275 v0340 = qcdr(v0340);
5276 stack[-3] = v0340;
5277 v0340 = stack[-3];
5278 if (v0340 == nil) goto v0252;
5279 stack[0] = stack[-1];
5280 v0340 = stack[-3];
5281 v0340 = qcar(v0340);
5282 v0134 = v0340;
5283 v0369 = v0134;
5284 v0340 = elt(env, 2); /* list */
5285 if (!consp(v0369)) goto v0355;
5286 v0369 = qcar(v0369);
5287 if (!(v0369 == v0340)) goto v0355;
5288 v0340 = qvalue(elt(env, 3)); /* t */
5289 stack[-8] = v0340;
5290 v0340 = v0134;
5291 v0340 = qcdr(v0340);
5292 goto v0402;
5293
5294 v0402:
5295 v0340 = ncons(v0340);
5296 nil = C_nil;
5297 if (exception_pending()) goto v0425;
5298 env = stack[-9];
5299 v0340 = Lrplacd(nil, stack[0], v0340);
5300 nil = C_nil;
5301 if (exception_pending()) goto v0425;
5302 env = stack[-9];
5303 v0340 = stack[-1];
5304 v0340 = qcdr(v0340);
5305 stack[-1] = v0340;
5306 goto v0390;
5307
5308 v0355:
5309 v0340 = v0134;
5310 fn = elt(env, 9); /* reval */
5311 v0340 = (*qfn1(fn))(qenv(fn), v0340);
5312 nil = C_nil;
5313 if (exception_pending()) goto v0425;
5314 env = stack[-9];
5315 v0134 = v0340;
5316 if (symbolp(v0340)) goto v0264;
5317 v0340 = v0134;
5318 v0340 = Lconsp(nil, v0340);
5319 env = stack[-9];
5320 if (v0340 == nil) goto v0143;
5321 v0340 = v0134;
5322 v0369 = qcar(v0340);
5323 v0340 = elt(env, 4); /* setvalued */
5324 v0340 = Lflagp(nil, v0369, v0340);
5325 env = stack[-9];
5326 if (!(v0340 == nil)) goto v0264;
5327
5328 v0143:
5329 v0369 = v0134;
5330 v0340 = elt(env, 5); /* "set" */
5331 fn = elt(env, 10); /* typerr */
5332 v0340 = (*qfn2(fn))(qenv(fn), v0369, v0340);
5333 nil = C_nil;
5334 if (exception_pending()) goto v0425;
5335 env = stack[-9];
5336 goto v0402;
5337
5338 v0264:
5339 v0340 = qvalue(elt(env, 3)); /* t */
5340 stack[-4] = v0340;
5341 v0340 = v0134;
5342 goto v0402;
5343
5344 v0252:
5345 v0340 = stack[-2];
5346 goto v0387;
5347
5348 v0387:
5349 v0134 = v0340;
5350 v0340 = stack[-8];
5351 if (v0340 == nil) { popv(10); return onevalue(v0134); }
5352 v0340 = stack[-4];
5353 if (v0340 == nil) goto v0426;
5354 stack[0] = elt(env, 6); /* "Cannot evaluate" */
5355 stack[-1] = stack[-7];
5356 v0340 = stack[-6];
5357 fn = elt(env, 9); /* reval */
5358 stack[-2] = (*qfn1(fn))(qenv(fn), v0340);
5359 nil = C_nil;
5360 if (exception_pending()) goto v0425;
5361 env = stack[-9];
5362 v0340 = stack[-5];
5363 fn = elt(env, 9); /* reval */
5364 v0340 = (*qfn1(fn))(qenv(fn), v0340);
5365 nil = C_nil;
5366 if (exception_pending()) goto v0425;
5367 env = stack[-9];
5368 v0135 = list3(stack[-1], stack[-2], v0340);
5369 nil = C_nil;
5370 if (exception_pending()) goto v0425;
5371 env = stack[-9];
5372 v0134 = elt(env, 7); /* "as Boolean-valued set expression" */
5373 v0369 = qvalue(elt(env, 1)); /* nil */
5374 v0340 = qvalue(elt(env, 3)); /* t */
5375 {
5376 Lisp_Object v0320 = stack[0];
5377 popv(10);
5378 fn = elt(env, 11); /* msgpri */
5379 return (*qfnn(fn))(qenv(fn), 5, v0320, v0135, v0134, v0369, v0340);
5380 }
5381
5382 v0426:
5383 v0369 = stack[-7];
5384 v0340 = elt(env, 8); /* setboolfn */
5385 v0340 = get(v0369, v0340);
5386 env = stack[-9];
5387 v0369 = v0134;
5388 {
5389 popv(10);
5390 fn = elt(env, 12); /* apply */
5391 return (*qfn2(fn))(qenv(fn), v0340, v0369);
5392 }
5393
5394 v0232:
5395 v0340 = v0134;
5396 fn = elt(env, 9); /* reval */
5397 v0340 = (*qfn1(fn))(qenv(fn), v0340);
5398 nil = C_nil;
5399 if (exception_pending()) goto v0425;
5400 env = stack[-9];
5401 v0134 = v0340;
5402 if (symbolp(v0340)) goto v0258;
5403 v0340 = v0134;
5404 v0340 = Lconsp(nil, v0340);
5405 env = stack[-9];
5406 if (v0340 == nil) goto v0383;
5407 v0340 = v0134;
5408 v0369 = qcar(v0340);
5409 v0340 = elt(env, 4); /* setvalued */
5410 v0340 = Lflagp(nil, v0369, v0340);
5411 env = stack[-9];
5412 if (!(v0340 == nil)) goto v0258;
5413
5414 v0383:
5415 v0369 = v0134;
5416 v0340 = elt(env, 5); /* "set" */
5417 fn = elt(env, 10); /* typerr */
5418 v0340 = (*qfn2(fn))(qenv(fn), v0369, v0340);
5419 nil = C_nil;
5420 if (exception_pending()) goto v0425;
5421 env = stack[-9];
5422 goto v0330;
5423
5424 v0258:
5425 v0340 = qvalue(elt(env, 3)); /* t */
5426 stack[-4] = v0340;
5427 v0340 = v0134;
5428 goto v0330;
5429
5430 v0354:
5431 v0340 = qvalue(elt(env, 1)); /* nil */
5432 goto v0387;
5433 /* error exit handlers */
5434 v0425:
5435 popv(10);
5436 return nil;
5437 }
5438
5439
5440
5441 /* Code for gcdlist1 */
5442
CC_gcdlist1(Lisp_Object env,Lisp_Object v0000)5443 static Lisp_Object CC_gcdlist1(Lisp_Object env,
5444 Lisp_Object v0000)
5445 {
5446 Lisp_Object nil = C_nil;
5447 Lisp_Object v0432, v0113, v0114;
5448 Lisp_Object fn;
5449 CSL_IGNORE(nil);
5450 #ifdef DEBUG
5451 if (check_env(env)) return aerror("env for gcdlist1");
5452 #endif
5453 if (stack >= stacklimit)
5454 {
5455 push(v0000);
5456 env = reclaim(env, "stack", GC_STACK, 0);
5457 pop(v0000);
5458 nil = C_nil;
5459 if (exception_pending()) return nil;
5460 }
5461 push(env);
5462 /* space for vars preserved across procedure calls */
5463 push5(nil, nil, nil, nil, nil);
5464 push2(nil, nil);
5465 /* copy arguments values to proper place */
5466 stack[0] = v0000;
5467 /* end of prologue */
5468 stack[-6] = qvalue(elt(env, 1)); /* reduction!-count */
5469 qvalue(elt(env, 1)) = nil; /* reduction!-count */
5470 v0432 = stack[0];
5471 v0432 = qcar(v0432);
5472 v0432 = qcdr(v0432);
5473 stack[-4] = v0432;
5474 stack[-2] = v0432;
5475 v0432 = stack[0];
5476 v0432 = qcdr(v0432);
5477 stack[-3] = v0432;
5478 goto v0235;
5479
5480 v0235:
5481 v0432 = stack[-3];
5482 if (v0432 == nil) goto v0165;
5483 v0432 = stack[-3];
5484 v0432 = qcar(v0432);
5485 stack[-1] = v0432;
5486 v0113 = stack[-2];
5487 v0432 = stack[-1];
5488 v0432 = qcdr(v0432);
5489 fn = elt(env, 4); /* vunion */
5490 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5491 nil = C_nil;
5492 if (exception_pending()) goto v0284;
5493 env = stack[-7];
5494 stack[-2] = v0432;
5495 v0113 = stack[-4];
5496 v0432 = stack[-1];
5497 v0432 = qcdr(v0432);
5498 fn = elt(env, 5); /* vintersection */
5499 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5500 nil = C_nil;
5501 if (exception_pending()) goto v0284;
5502 env = stack[-7];
5503 stack[-4] = v0432;
5504 v0432 = stack[-3];
5505 v0432 = qcdr(v0432);
5506 stack[-3] = v0432;
5507 goto v0235;
5508
5509 v0165:
5510 v0432 = stack[-4];
5511 if (v0432 == nil) goto v0433;
5512 v0432 = stack[-4];
5513 stack[-1] = v0432;
5514 goto v0156;
5515
5516 v0156:
5517 v0432 = stack[-1];
5518 if (v0432 == nil) goto v0254;
5519 v0432 = stack[-1];
5520 v0432 = qcar(v0432);
5521 v0113 = v0432;
5522 v0432 = stack[-2];
5523 fn = elt(env, 6); /* vdelete */
5524 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5525 nil = C_nil;
5526 if (exception_pending()) goto v0284;
5527 env = stack[-7];
5528 stack[-2] = v0432;
5529 v0432 = stack[-1];
5530 v0432 = qcdr(v0432);
5531 stack[-1] = v0432;
5532 goto v0156;
5533
5534 v0254:
5535 v0113 = stack[-4];
5536 v0432 = elt(env, 3); /* lesspcdr */
5537 fn = elt(env, 7); /* sort */
5538 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5539 nil = C_nil;
5540 if (exception_pending()) goto v0284;
5541 env = stack[-7];
5542 stack[-4] = v0432;
5543 v0432 = stack[-4];
5544 v0432 = qcar(v0432);
5545 v0113 = qcdr(v0432);
5546 v0432 = (Lisp_Object)17; /* 1 */
5547 if (v0113 == v0432) goto v0355;
5548 v0432 = stack[-2];
5549 if (v0432 == nil) goto v0434;
5550 v0113 = stack[-2];
5551 v0432 = stack[-4];
5552 v0432 = Lappend(nil, v0113, v0432);
5553 nil = C_nil;
5554 if (exception_pending()) goto v0284;
5555 env = stack[-7];
5556 fn = elt(env, 8); /* mapcarcar */
5557 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5558 nil = C_nil;
5559 if (exception_pending()) goto v0284;
5560 env = stack[-7];
5561 fn = elt(env, 9); /* setkorder */
5562 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5563 nil = C_nil;
5564 if (exception_pending()) goto v0284;
5565 env = stack[-7];
5566 stack[-5] = v0432;
5567 v0432 = qvalue(elt(env, 2)); /* nil */
5568 stack[-4] = v0432;
5569 v0432 = stack[0];
5570 stack[-1] = v0432;
5571 goto v0342;
5572
5573 v0342:
5574 v0432 = stack[-1];
5575 if (v0432 == nil) goto v0375;
5576 v0432 = stack[-1];
5577 v0432 = qcar(v0432);
5578 v0432 = qcar(v0432);
5579 fn = elt(env, 10); /* reorder */
5580 stack[0] = (*qfn1(fn))(qenv(fn), v0432);
5581 nil = C_nil;
5582 if (exception_pending()) goto v0284;
5583 env = stack[-7];
5584 v0432 = stack[-2];
5585 fn = elt(env, 8); /* mapcarcar */
5586 v0113 = (*qfn1(fn))(qenv(fn), v0432);
5587 nil = C_nil;
5588 if (exception_pending()) goto v0284;
5589 env = stack[-7];
5590 v0432 = stack[-4];
5591 fn = elt(env, 11); /* split!-wrt!-variables */
5592 v0432 = (*qfnn(fn))(qenv(fn), 3, stack[0], v0113, v0432);
5593 nil = C_nil;
5594 if (exception_pending()) goto v0284;
5595 env = stack[-7];
5596 stack[-4] = v0432;
5597 v0432 = stack[-1];
5598 v0432 = qcdr(v0432);
5599 stack[-1] = v0432;
5600 goto v0342;
5601
5602 v0375:
5603 v0432 = stack[-5];
5604 fn = elt(env, 9); /* setkorder */
5605 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5606 nil = C_nil;
5607 if (exception_pending()) goto v0284;
5608 env = stack[-7];
5609 v0432 = stack[-4];
5610 stack[-5] = v0432;
5611 v0432 = stack[-5];
5612 if (v0432 == nil) goto v0370;
5613 v0432 = stack[-5];
5614 v0432 = qcar(v0432);
5615 stack[-1] = v0432;
5616 v0432 = stack[-1];
5617 fn = elt(env, 10); /* reorder */
5618 stack[0] = (*qfn1(fn))(qenv(fn), v0432);
5619 nil = C_nil;
5620 if (exception_pending()) goto v0284;
5621 env = stack[-7];
5622 v0113 = stack[-1];
5623 v0432 = qvalue(elt(env, 2)); /* nil */
5624 fn = elt(env, 12); /* total!-degree!-in!-powers */
5625 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5626 nil = C_nil;
5627 if (exception_pending()) goto v0284;
5628 env = stack[-7];
5629 v0432 = cons(stack[0], v0432);
5630 nil = C_nil;
5631 if (exception_pending()) goto v0284;
5632 env = stack[-7];
5633 v0432 = ncons(v0432);
5634 nil = C_nil;
5635 if (exception_pending()) goto v0284;
5636 env = stack[-7];
5637 stack[-3] = v0432;
5638 stack[-4] = v0432;
5639 goto v0435;
5640
5641 v0435:
5642 v0432 = stack[-5];
5643 v0432 = qcdr(v0432);
5644 stack[-5] = v0432;
5645 v0432 = stack[-5];
5646 if (v0432 == nil) goto v0124;
5647 stack[-2] = stack[-3];
5648 v0432 = stack[-5];
5649 v0432 = qcar(v0432);
5650 stack[-1] = v0432;
5651 v0432 = stack[-1];
5652 fn = elt(env, 10); /* reorder */
5653 stack[0] = (*qfn1(fn))(qenv(fn), v0432);
5654 nil = C_nil;
5655 if (exception_pending()) goto v0284;
5656 env = stack[-7];
5657 v0113 = stack[-1];
5658 v0432 = qvalue(elt(env, 2)); /* nil */
5659 fn = elt(env, 12); /* total!-degree!-in!-powers */
5660 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5661 nil = C_nil;
5662 if (exception_pending()) goto v0284;
5663 env = stack[-7];
5664 v0432 = cons(stack[0], v0432);
5665 nil = C_nil;
5666 if (exception_pending()) goto v0284;
5667 env = stack[-7];
5668 v0432 = ncons(v0432);
5669 nil = C_nil;
5670 if (exception_pending()) goto v0284;
5671 env = stack[-7];
5672 v0432 = Lrplacd(nil, stack[-2], v0432);
5673 nil = C_nil;
5674 if (exception_pending()) goto v0284;
5675 env = stack[-7];
5676 v0432 = stack[-3];
5677 v0432 = qcdr(v0432);
5678 stack[-3] = v0432;
5679 goto v0435;
5680
5681 v0124:
5682 v0432 = stack[-4];
5683 goto v0436;
5684
5685 v0436:
5686 v0432 = CC_gcdlist1(env, v0432);
5687 nil = C_nil;
5688 if (exception_pending()) goto v0284;
5689 env = stack[-7];
5690 goto v0220;
5691
5692 v0220:
5693 qvalue(elt(env, 1)) = stack[-6]; /* reduction!-count */
5694 { popv(8); return onevalue(v0432); }
5695
5696 v0370:
5697 v0432 = qvalue(elt(env, 2)); /* nil */
5698 goto v0436;
5699
5700 v0434:
5701 v0113 = stack[0];
5702 v0432 = stack[-4];
5703 fn = elt(env, 13); /* gcdlist2 */
5704 v0432 = (*qfn2(fn))(qenv(fn), v0113, v0432);
5705 nil = C_nil;
5706 if (exception_pending()) goto v0284;
5707 env = stack[-7];
5708 goto v0220;
5709
5710 v0355:
5711 v0113 = stack[-4];
5712 v0432 = stack[-2];
5713 v0432 = Lappend(nil, v0113, v0432);
5714 nil = C_nil;
5715 if (exception_pending()) goto v0284;
5716 env = stack[-7];
5717 fn = elt(env, 8); /* mapcarcar */
5718 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5719 nil = C_nil;
5720 if (exception_pending()) goto v0284;
5721 env = stack[-7];
5722 stack[-5] = v0432;
5723 v0432 = stack[-5];
5724 fn = elt(env, 9); /* setkorder */
5725 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5726 nil = C_nil;
5727 if (exception_pending()) goto v0284;
5728 env = stack[-7];
5729 stack[-4] = v0432;
5730 v0432 = stack[0];
5731 stack[-3] = v0432;
5732 v0432 = stack[-3];
5733 if (v0432 == nil) goto v0146;
5734 v0432 = stack[-3];
5735 v0432 = qcar(v0432);
5736 v0432 = qcar(v0432);
5737 fn = elt(env, 10); /* reorder */
5738 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5739 nil = C_nil;
5740 if (exception_pending()) goto v0284;
5741 env = stack[-7];
5742 v0432 = ncons(v0432);
5743 nil = C_nil;
5744 if (exception_pending()) goto v0284;
5745 env = stack[-7];
5746 stack[-1] = v0432;
5747 stack[-2] = v0432;
5748 goto v0437;
5749
5750 v0437:
5751 v0432 = stack[-3];
5752 v0432 = qcdr(v0432);
5753 stack[-3] = v0432;
5754 v0432 = stack[-3];
5755 if (v0432 == nil) goto v0423;
5756 stack[0] = stack[-1];
5757 v0432 = stack[-3];
5758 v0432 = qcar(v0432);
5759 v0432 = qcar(v0432);
5760 fn = elt(env, 10); /* reorder */
5761 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5762 nil = C_nil;
5763 if (exception_pending()) goto v0284;
5764 env = stack[-7];
5765 v0432 = ncons(v0432);
5766 nil = C_nil;
5767 if (exception_pending()) goto v0284;
5768 env = stack[-7];
5769 v0432 = Lrplacd(nil, stack[0], v0432);
5770 nil = C_nil;
5771 if (exception_pending()) goto v0284;
5772 env = stack[-7];
5773 v0432 = stack[-1];
5774 v0432 = qcdr(v0432);
5775 stack[-1] = v0432;
5776 goto v0437;
5777
5778 v0423:
5779 v0432 = stack[-2];
5780 v0114 = v0432;
5781 goto v0264;
5782
5783 v0264:
5784 v0113 = qvalue(elt(env, 2)); /* nil */
5785 v0432 = stack[-5];
5786 fn = elt(env, 14); /* gcdlist3 */
5787 v0432 = (*qfnn(fn))(qenv(fn), 3, v0114, v0113, v0432);
5788 nil = C_nil;
5789 if (exception_pending()) goto v0284;
5790 env = stack[-7];
5791 stack[0] = v0432;
5792 v0432 = stack[-4];
5793 fn = elt(env, 9); /* setkorder */
5794 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5795 nil = C_nil;
5796 if (exception_pending()) goto v0284;
5797 env = stack[-7];
5798 v0432 = stack[0];
5799 fn = elt(env, 10); /* reorder */
5800 v0432 = (*qfn1(fn))(qenv(fn), v0432);
5801 nil = C_nil;
5802 if (exception_pending()) goto v0284;
5803 env = stack[-7];
5804 goto v0220;
5805
5806 v0146:
5807 v0432 = qvalue(elt(env, 2)); /* nil */
5808 v0114 = v0432;
5809 goto v0264;
5810
5811 v0433:
5812 v0432 = (Lisp_Object)17; /* 1 */
5813 goto v0220;
5814 /* error exit handlers */
5815 v0284:
5816 env = stack[-7];
5817 qvalue(elt(env, 1)) = stack[-6]; /* reduction!-count */
5818 popv(8);
5819 return nil;
5820 }
5821
5822
5823
5824 /* Code for drop_dec_with */
5825
CC_drop_dec_with(Lisp_Object env,int nargs,Lisp_Object v0000,Lisp_Object v0001,Lisp_Object v0211,...)5826 static Lisp_Object MS_CDECL CC_drop_dec_with(Lisp_Object env, int nargs,
5827 Lisp_Object v0000, Lisp_Object v0001,
5828 Lisp_Object v0211, ...)
5829 {
5830 Lisp_Object nil = C_nil;
5831 Lisp_Object v0230, v0408, v0228;
5832 CSL_IGNORE(nil);
5833 argcheck(nargs, 3, "drop_dec_with");
5834 #ifdef DEBUG
5835 if (check_env(env)) return aerror("env for drop_dec_with");
5836 #endif
5837 if (stack >= stacklimit)
5838 {
5839 push3(v0211,v0001,v0000);
5840 env = reclaim(env, "stack", GC_STACK, 0);
5841 pop3(v0000,v0001,v0211);
5842 nil = C_nil;
5843 if (exception_pending()) return nil;
5844 }
5845 push(env);
5846 /* space for vars preserved across procedure calls */
5847 push5(nil, nil, nil, nil, nil);
5848 push(nil);
5849 /* copy arguments values to proper place */
5850 stack[-2] = v0211;
5851 stack[-3] = v0001;
5852 stack[-4] = v0000;
5853 /* end of prologue */
5854 stack[-5] = nil;
5855 v0230 = stack[-2];
5856 if (v0230 == nil) goto v0354;
5857 v0408 = stack[-3];
5858 v0230 = elt(env, 1); /* dec_with_rl */
5859 v0230 = get(v0408, v0230);
5860 env = stack[-6];
5861 goto v0224;
5862
5863 v0224:
5864 stack[-1] = v0230;
5865 goto v0221;
5866
5867 v0221:
5868 v0230 = stack[-1];
5869 if (v0230 == nil) goto v0330;
5870 v0230 = stack[-1];
5871 v0230 = qcar(v0230);
5872 stack[0] = v0230;
5873 v0408 = stack[-4];
5874 v0230 = stack[0];
5875 v0230 = Ldelete(nil, v0408, v0230);
5876 nil = C_nil;
5877 if (exception_pending()) goto v0208;
5878 env = stack[-6];
5879 stack[0] = v0230;
5880 v0230 = stack[0];
5881 v0408 = Llength(nil, v0230);
5882 nil = C_nil;
5883 if (exception_pending()) goto v0208;
5884 env = stack[-6];
5885 v0230 = (Lisp_Object)17; /* 1 */
5886 v0230 = (Lisp_Object)greaterp2(v0408, v0230);
5887 nil = C_nil;
5888 if (exception_pending()) goto v0208;
5889 v0230 = v0230 ? lisp_true : nil;
5890 env = stack[-6];
5891 if (v0230 == nil) goto v0218;
5892 v0408 = stack[0];
5893 v0230 = stack[-5];
5894 v0230 = cons(v0408, v0230);
5895 nil = C_nil;
5896 if (exception_pending()) goto v0208;
5897 env = stack[-6];
5898 stack[-5] = v0230;
5899 goto v0218;
5900
5901 v0218:
5902 v0230 = stack[-1];
5903 v0230 = qcdr(v0230);
5904 stack[-1] = v0230;
5905 goto v0221;
5906
5907 v0330:
5908 v0230 = stack[-2];
5909 if (v0230 == nil) goto v0328;
5910 v0228 = stack[-3];
5911 v0408 = elt(env, 1); /* dec_with_rl */
5912 v0230 = stack[-5];
5913 v0230 = Lputprop(nil, 3, v0228, v0408, v0230);
5914 nil = C_nil;
5915 if (exception_pending()) goto v0208;
5916 goto v0254;
5917
5918 v0254:
5919 v0230 = nil;
5920 { popv(7); return onevalue(v0230); }
5921
5922 v0328:
5923 v0228 = stack[-3];
5924 v0408 = elt(env, 2); /* dec_with */
5925 v0230 = stack[-5];
5926 v0230 = Lputprop(nil, 3, v0228, v0408, v0230);
5927 nil = C_nil;
5928 if (exception_pending()) goto v0208;
5929 goto v0254;
5930
5931 v0354:
5932 v0408 = stack[-3];
5933 v0230 = elt(env, 2); /* dec_with */
5934 v0230 = get(v0408, v0230);
5935 env = stack[-6];
5936 goto v0224;
5937 /* error exit handlers */
5938 v0208:
5939 popv(7);
5940 return nil;
5941 }
5942
5943
5944
5945 /* Code for stp */
5946
CC_stp(Lisp_Object env,Lisp_Object v0000)5947 static Lisp_Object CC_stp(Lisp_Object env,
5948 Lisp_Object v0000)
5949 {
5950 Lisp_Object nil = C_nil;
5951 Lisp_Object v0390, v0165;
5952 Lisp_Object fn;
5953 CSL_IGNORE(nil);
5954 #ifdef DEBUG
5955 if (check_env(env)) return aerror("env for stp");
5956 #endif
5957 if (stack >= stacklimit)
5958 {
5959 push(v0000);
5960 env = reclaim(env, "stack", GC_STACK, 0);
5961 pop(v0000);
5962 nil = C_nil;
5963 if (exception_pending()) return nil;
5964 }
5965 push(env);
5966 /* copy arguments values to proper place */
5967 v0390 = v0000;
5968 /* end of prologue */
5969 v0165 = v0390;
5970 v0165 = Lconsp(nil, v0165);
5971 env = stack[0];
5972 if (v0165 == nil) goto v0239;
5973 v0390 = qcar(v0390);
5974 {
5975 popv(1);
5976 fn = elt(env, 2); /* spp */
5977 return (*qfn1(fn))(qenv(fn), v0390);
5978 }
5979
5980 v0239:
5981 v0390 = qvalue(elt(env, 1)); /* nil */
5982 { popv(1); return onevalue(v0390); }
5983 }
5984
5985
5986
5987 /* Code for rappend */
5988
CC_rappend(Lisp_Object env,Lisp_Object v0000)5989 static Lisp_Object CC_rappend(Lisp_Object env,
5990 Lisp_Object v0000)
5991 {
5992 Lisp_Object nil = C_nil;
5993 Lisp_Object v0269, v0413;
5994 Lisp_Object fn;
5995 CSL_IGNORE(nil);
5996 #ifdef DEBUG
5997 if (check_env(env)) return aerror("env for rappend");
5998 #endif
5999 if (stack >= stacklimit)
6000 {
6001 push(v0000);
6002 env = reclaim(env, "stack", GC_STACK, 0);
6003 pop(v0000);
6004 nil = C_nil;
6005 if (exception_pending()) return nil;
6006 }
6007 push(env);
6008 /* space for vars preserved across procedure calls */
6009 push3(nil, nil, nil);
6010 /* copy arguments values to proper place */
6011 stack[0] = v0000;
6012 /* end of prologue */
6013 v0413 = elt(env, 1); /* append */
6014 v0269 = stack[0];
6015 v0269 = cons(v0413, v0269);
6016 nil = C_nil;
6017 if (exception_pending()) goto v0215;
6018 env = stack[-3];
6019 fn = elt(env, 4); /* argnochk */
6020 v0269 = (*qfn1(fn))(qenv(fn), v0269);
6021 nil = C_nil;
6022 if (exception_pending()) goto v0215;
6023 env = stack[-3];
6024 v0269 = stack[0];
6025 v0269 = qcar(v0269);
6026 fn = elt(env, 5); /* reval */
6027 v0269 = (*qfn1(fn))(qenv(fn), v0269);
6028 nil = C_nil;
6029 if (exception_pending()) goto v0215;
6030 env = stack[-3];
6031 stack[-2] = v0269;
6032 fn = elt(env, 6); /* getrtype */
6033 v0413 = (*qfn1(fn))(qenv(fn), v0269);
6034 nil = C_nil;
6035 if (exception_pending()) goto v0215;
6036 env = stack[-3];
6037 v0269 = elt(env, 2); /* list */
6038 if (v0413 == v0269) goto v0394;
6039 v0413 = stack[-2];
6040 v0269 = elt(env, 3); /* "list" */
6041 fn = elt(env, 7); /* typerr */
6042 v0269 = (*qfn2(fn))(qenv(fn), v0413, v0269);
6043 nil = C_nil;
6044 if (exception_pending()) goto v0215;
6045 goto v0235;
6046
6047 v0235:
6048 v0269 = nil;
6049 { popv(4); return onevalue(v0269); }
6050
6051 v0394:
6052 v0269 = stack[0];
6053 v0269 = qcdr(v0269);
6054 v0269 = qcar(v0269);
6055 fn = elt(env, 5); /* reval */
6056 v0269 = (*qfn1(fn))(qenv(fn), v0269);
6057 nil = C_nil;
6058 if (exception_pending()) goto v0215;
6059 env = stack[-3];
6060 stack[-1] = v0269;
6061 fn = elt(env, 6); /* getrtype */
6062 v0413 = (*qfn1(fn))(qenv(fn), v0269);
6063 nil = C_nil;
6064 if (exception_pending()) goto v0215;
6065 env = stack[-3];
6066 v0269 = elt(env, 2); /* list */
6067 if (v0413 == v0269) goto v0256;
6068 v0413 = stack[-1];
6069 v0269 = elt(env, 3); /* "list" */
6070 fn = elt(env, 7); /* typerr */
6071 v0269 = (*qfn2(fn))(qenv(fn), v0413, v0269);
6072 nil = C_nil;
6073 if (exception_pending()) goto v0215;
6074 goto v0235;
6075
6076 v0256:
6077 stack[0] = elt(env, 2); /* list */
6078 v0269 = stack[-2];
6079 v0413 = qcdr(v0269);
6080 v0269 = stack[-1];
6081 v0269 = qcdr(v0269);
6082 v0269 = Lappend(nil, v0413, v0269);
6083 nil = C_nil;
6084 if (exception_pending()) goto v0215;
6085 {
6086 Lisp_Object v0252 = stack[0];
6087 popv(4);
6088 return cons(v0252, v0269);
6089 }
6090 /* error exit handlers */
6091 v0215:
6092 popv(4);
6093 return nil;
6094 }
6095
6096
6097
6098 /* Code for polineqcheck */
6099
CC_polineqcheck(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)6100 static Lisp_Object CC_polineqcheck(Lisp_Object env,
6101 Lisp_Object v0000, Lisp_Object v0001)
6102 {
6103 Lisp_Object nil = C_nil;
6104 Lisp_Object v0259, v0394;
6105 Lisp_Object fn;
6106 CSL_IGNORE(nil);
6107 #ifdef DEBUG
6108 if (check_env(env)) return aerror("env for polineqcheck");
6109 #endif
6110 if (stack >= stacklimit)
6111 {
6112 push2(v0001,v0000);
6113 env = reclaim(env, "stack", GC_STACK, 0);
6114 pop2(v0000,v0001);
6115 nil = C_nil;
6116 if (exception_pending()) return nil;
6117 }
6118 push(env);
6119 /* space for vars preserved across procedure calls */
6120 push2(nil, nil);
6121 /* copy arguments values to proper place */
6122 stack[0] = v0001;
6123 stack[-1] = v0000;
6124 /* end of prologue */
6125
6126 v0222:
6127 v0259 = stack[-1];
6128 if (v0259 == nil) goto v0162;
6129 v0259 = stack[-1];
6130 v0394 = qcar(v0259);
6131 v0259 = stack[0];
6132 fn = elt(env, 3); /* subsq */
6133 v0259 = (*qfn2(fn))(qenv(fn), v0394, v0259);
6134 nil = C_nil;
6135 if (exception_pending()) goto v0246;
6136 env = stack[-2];
6137 v0259 = qcar(v0259);
6138 fn = elt(env, 4); /* minusf */
6139 v0259 = (*qfn1(fn))(qenv(fn), v0259);
6140 nil = C_nil;
6141 if (exception_pending()) goto v0246;
6142 env = stack[-2];
6143 if (v0259 == nil) goto v0272;
6144 v0259 = qvalue(elt(env, 2)); /* nil */
6145 { popv(3); return onevalue(v0259); }
6146
6147 v0272:
6148 v0259 = stack[-1];
6149 v0394 = qcdr(v0259);
6150 v0259 = stack[0];
6151 stack[-1] = v0394;
6152 stack[0] = v0259;
6153 goto v0222;
6154
6155 v0162:
6156 v0259 = qvalue(elt(env, 1)); /* t */
6157 { popv(3); return onevalue(v0259); }
6158 /* error exit handlers */
6159 v0246:
6160 popv(3);
6161 return nil;
6162 }
6163
6164
6165
6166 /* Code for reduce!-mod!-eig */
6167
CC_reduceKmodKeig(Lisp_Object env,Lisp_Object v0000,Lisp_Object v0001)6168 static Lisp_Object CC_reduceKmodKeig(Lisp_Object env,
6169 Lisp_Object v0000, Lisp_Object v0001)
6170 {
6171 Lisp_Object nil = C_nil;
6172 Lisp_Object v0304, v0282, v0418;
6173 Lisp_Object fn;
6174 CSL_IGNORE(nil);
6175 #ifdef DEBUG
6176 if (check_env(env)) return aerror("env for reduce-mod-eig");
6177 #endif
6178 if (stack >= stacklimit)
6179 {
6180 push2(v0001,v0000);
6181 env = reclaim(env, "stack", GC_STACK, 0);
6182 pop2(v0000,v0001);
6183 nil = C_nil;
6184 if (exception_pending()) return nil;
6185 }
6186 push(env);
6187 /* space for vars preserved across procedure calls */
6188 push5(nil, nil, nil, nil, nil);
6189 push2(nil, nil);
6190 /* copy arguments values to proper place */
6191 v0304 = v0001;
6192 stack[-1] = v0000;
6193 /* end of prologue */
6194 stack[-2] = nil;
6195 stack[0] = v0304;
6196 goto v0224;
6197
6198 v0224:
6199 v0304 = stack[0];
6200 if (v0304 == nil) goto v0220;
6201 v0282 = stack[-1];
6202 v0304 = stack[0];
6203 v0304 = qcar(v0304);
6204 v0304 = qcdr(v0304);
6205 fn = elt(env, 2); /* reduce!-mod!-eigf */
6206 v0304 = (*qfn2(fn))(qenv(fn), v0282, v0304);
6207 nil = C_nil;
6208 if (exception_pending()) goto v0376;
6209 env = stack[-7];
6210 stack[-6] = v0304;
6211 v0304 = qcar(v0304);
6212 if (v0304 == nil) goto v0233;
6213 v0304 = stack[0];
6214 v0304 = qcar(v0304);
6215 v0418 = qcar(v0304);
6216 v0282 = stack[-6];
6217 v0304 = stack[-2];
6218 v0304 = acons(v0418, v0282, v0304);
6219 nil = C_nil;
6220 if (exception_pending()) goto v0376;
6221 env = stack[-7];
6222 stack[-2] = v0304;
6223 goto v0233;
6224
6225 v0233:
6226 v0304 = stack[0];
6227 v0304 = qcdr(v0304);
6228 stack[0] = v0304;
6229 goto v0224;
6230
6231 v0220:
6232 v0304 = (Lisp_Object)17; /* 1 */
6233 stack[-6] = v0304;
6234 v0304 = stack[-2];
6235 stack[0] = v0304;
6236 goto v0438;
6237
6238 v0438:
6239 v0304 = stack[0];
6240 if (v0304 == nil) goto v0251;
6241 v0282 = stack[-6];
6242 v0304 = stack[0];
6243 v0304 = qcar(v0304);
6244 v0304 = qcdr(v0304);
6245 v0304 = qcdr(v0304);
6246 fn = elt(env, 3); /* lcm */
6247 v0304 = (*qfn2(fn))(qenv(fn), v0282, v0304);
6248 nil = C_nil;
6249 if (exception_pending()) goto v0376;
6250 env = stack[-7];
6251 stack[-6] = v0304;
6252 v0304 = stack[0];
6253 v0304 = qcdr(v0304);
6254 stack[0] = v0304;
6255 goto v0438;
6256
6257 v0251:
6258 v0304 = stack[-2];
6259 v0304 = Lreverse(nil, v0304);
6260 nil = C_nil;
6261 if (exception_pending()) goto v0376;
6262 env = stack[-7];
6263 stack[-5] = v0304;
6264 v0304 = stack[-5];
6265 if (v0304 == nil) goto v0252;
6266 v0304 = stack[-5];
6267 v0304 = qcar(v0304);
6268 stack[-1] = qcar(v0304);
6269 v0304 = stack[-5];
6270 v0304 = qcar(v0304);
6271 v0304 = qcdr(v0304);
6272 stack[0] = qcar(v0304);
6273 v0282 = stack[-6];
6274 v0304 = stack[-5];
6275 v0304 = qcar(v0304);
6276 v0304 = qcdr(v0304);
6277 v0304 = qcdr(v0304);
6278 fn = elt(env, 4); /* quotf */
6279 v0304 = (*qfn2(fn))(qenv(fn), v0282, v0304);
6280 nil = C_nil;
6281 if (exception_pending()) goto v0376;
6282 env = stack[-7];
6283 fn = elt(env, 5); /* multf */
6284 v0304 = (*qfn2(fn))(qenv(fn), stack[0], v0304);
6285 nil = C_nil;
6286 if (exception_pending()) goto v0376;
6287 env = stack[-7];
6288 v0304 = cons(stack[-1], v0304);
6289 nil = C_nil;
6290 if (exception_pending()) goto v0376;
6291 env = stack[-7];
6292 v0304 = ncons(v0304);
6293 nil = C_nil;
6294 if (exception_pending()) goto v0376;
6295 env = stack[-7];
6296 stack[-3] = v0304;
6297 stack[-4] = v0304;
6298 goto v0413;
6299
6300 v0413:
6301 v0304 = stack[-5];
6302 v0304 = qcdr(v0304);
6303 stack[-5] = v0304;
6304 v0304 = stack[-5];
6305 if (v0304 == nil) { Lisp_Object res = stack[-4]; popv(8); return onevalue(res); }
6306 stack[-2] = stack[-3];
6307 v0304 = stack[-5];
6308 v0304 = qcar(v0304);
6309 stack[-1] = qcar(v0304);
6310 v0304 = stack[-5];
6311 v0304 = qcar(v0304);
6312 v0304 = qcdr(v0304);
6313 stack[0] = qcar(v0304);
6314 v0282 = stack[-6];
6315 v0304 = stack[-5];
6316 v0304 = qcar(v0304);
6317 v0304 = qcdr(v0304);
6318 v0304 = qcdr(v0304);
6319 fn = elt(env, 4); /* quotf */
6320 v0304 = (*qfn2(fn))(qenv(fn), v0282, v0304);
6321 nil = C_nil;
6322 if (exception_pending()) goto v0376;
6323 env = stack[-7];
6324 fn = elt(env, 5); /* multf */
6325 v0304 = (*qfn2(fn))(qenv(fn), stack[0], v0304);
6326 nil = C_nil;
6327 if (exception_pending()) goto v0376;
6328 env = stack[-7];
6329 v0304 = cons(stack[-1], v0304);
6330 nil = C_nil;
6331 if (exception_pending()) goto v0376;
6332 env = stack[-7];
6333 v0304 = ncons(v0304);
6334 nil = C_nil;
6335 if (exception_pending()) goto v0376;
6336 env = stack[-7];
6337 v0304 = Lrplacd(nil, stack[-2], v0304);
6338 nil = C_nil;
6339 if (exception_pending()) goto v0376;
6340 env = stack[-7];
6341 v0304 = stack[-3];
6342 v0304 = qcdr(v0304);
6343 stack[-3] = v0304;
6344 goto v0413;
6345
6346 v0252:
6347 v0304 = qvalue(elt(env, 1)); /* nil */
6348 { popv(8); return onevalue(v0304); }
6349 /* error exit handlers */
6350 v0376:
6351 popv(8);
6352 return nil;
6353 }
6354
6355
6356
6357 /* Code for evalwhereexp */
6358
CC_evalwhereexp(Lisp_Object env,Lisp_Object v0000)6359 static Lisp_Object CC_evalwhereexp(Lisp_Object env,
6360 Lisp_Object v0000)
6361 {
6362 Lisp_Object nil = C_nil;
6363 Lisp_Object v0246, v0247;
6364 Lisp_Object fn;
6365 CSL_IGNORE(nil);
6366 #ifdef DEBUG
6367 if (check_env(env)) return aerror("env for evalwhereexp");
6368 #endif
6369 if (stack >= stacklimit)
6370 {
6371 push(v0000);
6372 env = reclaim(env, "stack", GC_STACK, 0);
6373 pop(v0000);
6374 nil = C_nil;
6375 if (exception_pending()) return nil;
6376 }
6377 push(env);
6378 /* space for vars preserved across procedure calls */
6379 push3(nil, nil, nil);
6380 /* copy arguments values to proper place */
6381 v0247 = v0000;
6382 /* end of prologue */
6383 v0246 = v0247;
6384 v0246 = qcar(v0246);
6385 stack[-2] = qcdr(v0246);
6386 stack[-1] = elt(env, 1); /* aeval */
6387 stack[0] = elt(env, 1); /* aeval */
6388 v0246 = v0247;
6389 v0247 = qcdr(v0246);
6390 v0246 = elt(env, 2); /* where */
6391 fn = elt(env, 4); /* carx */
6392 v0246 = (*qfn2(fn))(qenv(fn), v0247, v0246);
6393 nil = C_nil;
6394 if (exception_pending()) goto v0242;
6395 env = stack[-3];
6396 v0246 = list2(stack[0], v0246);
6397 nil = C_nil;
6398 if (exception_pending()) goto v0242;
6399 env = stack[-3];
6400 v0246 = Lmkquote(nil, v0246);
6401 nil = C_nil;
6402 if (exception_pending()) goto v0242;
6403 env = stack[-3];
6404 v0246 = list2(stack[-1], v0246);
6405 nil = C_nil;
6406 if (exception_pending()) goto v0242;
6407 env = stack[-3];
6408 v0247 = list2(stack[-2], v0246);
6409 nil = C_nil;
6410 if (exception_pending()) goto v0242;
6411 env = stack[-3];
6412 v0246 = qvalue(elt(env, 3)); /* nil */
6413 {
6414 popv(4);
6415 fn = elt(env, 5); /* evalletsub */
6416 return (*qfn2(fn))(qenv(fn), v0247, v0246);
6417 }
6418 /* error exit handlers */
6419 v0242:
6420 popv(4);
6421 return nil;
6422 }
6423
6424
6425
6426 setup_type const u56_setup[] =
6427 {
6428 {"fortexp1", too_few_2, CC_fortexp1, wrong_no_2},
6429 {"freeindp", CC_freeindp, too_many_1, wrong_no_1},
6430 {"getphystypestate", CC_getphystypestate,too_many_1,wrong_no_1},
6431 {"intargfn", wrong_no_na, wrong_no_nb, (n_args *)CC_intargfn},
6432 {"simpfourier1", CC_simpfourier1,too_many_1, wrong_no_1},
6433 {"dp_from_a", CC_dp_from_a, too_many_1, wrong_no_1},
6434 {"invbase", CC_invbase, too_many_1, wrong_no_1},
6435 {"ggvars2", too_few_2, CC_ggvars2, wrong_no_2},
6436 {"nrootnn", too_few_2, CC_nrootnn, wrong_no_2},
6437 {"evaluate-in-vector", wrong_no_na, wrong_no_nb, (n_args *)CC_evaluateKinKvector},
6438 {"repr_atfnew", wrong_no_na, wrong_no_nb, (n_args *)CC_repr_atfnew},
6439 {"aex_1", wrong_no_na, wrong_no_nb, (n_args *)CC_aex_1},
6440 {"partialdiff", too_few_2, CC_partialdiff,wrong_no_2},
6441 {"transferrow", too_few_2, CC_transferrow,wrong_no_2},
6442 {"xregister_spoly_pair", wrong_no_na, wrong_no_nb, (n_args *)CC_xregister_spoly_pair},
6443 {"evalsetbool", wrong_no_na, wrong_no_nb, (n_args *)CC_evalsetbool},
6444 {"gcdlist1", CC_gcdlist1, too_many_1, wrong_no_1},
6445 {"drop_dec_with", wrong_no_na, wrong_no_nb, (n_args *)CC_drop_dec_with},
6446 {"stp", CC_stp, too_many_1, wrong_no_1},
6447 {"rappend", CC_rappend, too_many_1, wrong_no_1},
6448 {"polineqcheck", too_few_2, CC_polineqcheck,wrong_no_2},
6449 {"reduce-mod-eig", too_few_2, CC_reduceKmodKeig,wrong_no_2},
6450 {"evalwhereexp", CC_evalwhereexp,too_many_1, wrong_no_1},
6451 {NULL, (one_args *)"u56", (two_args *)"9962 3647278 8694753", 0}
6452 };
6453
6454 /* end of generated code */
6455