4 <ENTRY NOT-GEN TYPE?-GEN ==-GEN PRED-BRANCH-GEN TYPE-C-GEN VALID-TYPE?-GEN =?-STRING-GEN ATOM-PART-GEN OFFSET-PART-GEN PUT-GET-DECL-GEN SUBSTRUC-GEN>
6 <USE "COMPDEC" "MIMGEN" "CODGEN" "CHKDCL" "CARGEN" "STRGEN" "ADVMESS" "LNQGEN" "MMQGEN" "MAPGEN" "NEWREP">
8 " Generate NOT code. This is done in a variety of ways.
9 1) If NOTs arg is a predicate itself and this is a predicate usage
10 (flagged by BRANCH arg), just pass through setting the NOTF arg.
11 2) If NOTs arg is a predicate but a value is needed,
12 set up a predicate like situation and return NOT of the normal
14 3) Else just compile and complement result."
17 <GFCN
\1aNOT-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
18 <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
28 <TEMP TEMP22 P15:NODE RW16 PF17 (FLG21 %<>)>
30 <NTHUV NOD9 5 = TEMP22 (TYPE LIST)>
31 <NTHL TEMP22 1 = P15 (TYPE NODE)>
34 <FRAME '
\1aPRED-CHECK?>
38 <CALL '
\1aPRED-CHECK? 3 = PF17>
39 <TYPE? NOTF11 <TYPE-CODE FALSE> - TAG24>
41 <SET NOTF11 'T (TYPE ATOM)>
44 <SET NOTF11 %<> (TYPE FALSE)>
46 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE27>
47 <TYPE? PF17 <TYPE-CODE FALSE> + PHRASE27>
48 <FRAME '
\1aPGEN-DISPATCH>
51 <EQUAL? RW16 'FLUSHED - PHRASE31>
52 <SET TEMP22 'FLUSHED (TYPE ATOM)>
68 <CALL '
\1aPGEN-DISPATCH 6 = WHERE10>
71 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE33>
72 <EQUAL? RW16 'FLUSHED - PHRASE33>
73 <VEQUAL? NOTF11 0 + TAG37>
75 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG36>
77 <SET DIR13 'T (TYPE ATOM)>
80 <SET DIR13 %<> (TYPE FALSE)>
85 <CALL '
\1aGEN 2 = WHERE10>
97 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE40>
101 <CALL '
\1aGEN 2 = TEMP22>
103 <CALL '
\1aMAKE-TAG 0 = PF17>
108 <NTHUV P15 3 = STACK>
111 <FRAME '
\1aFREE-TEMP>
114 <CALL '
\1aFREE-TEMP 1>
116 <FRAME '
\1aREFERENCE>
118 <CALL '
\1aREFERENCE 1 = STACK>
121 <CALL '
\1aMOVE-ARG 2 = WHERE10>
122 <FRAME '
\1aBRANCH-TAG>
125 <CALL '
\1aBRANCH-TAG 1>
126 <FRAME '
\1aLABEL-TAG>
129 <CALL '
\1aLABEL-TAG 1>
130 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE83>
132 <FRAME '
\1aDEALLOCATE-TEMP>
134 <FRAME '
\1aREFERENCE>
135 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG54>
137 <SET TEMP22 'T (TYPE ATOM)>
140 <SET TEMP22 %<> (TYPE FALSE)>
144 <CALL '
\1aREFERENCE 1 = STACK>
146 <CALL '
\1aMOVE-ARG 2 = STACK>
147 <CALL '
\1aDEALLOCATE-TEMP 1>
150 <EQUAL? RW16 'FLUSHED - PHRASE56>
155 <CALL '
\1aGEN 2 = WHERE10>
158 <SET FLG21 %<> (TYPE FALSE)>
160 <NTHUV NOD9 3 = STACK>
161 <CALL '
\1aISTYPE? 1 = TEMP22>
162 <VEQUAL? TEMP22 'FALSE - TAG60>
164 <SET FLG21 'T (TYPE ATOM)>
168 <NTHUV NOD9 3 = STACK>
171 <CALL '
\1aTYPE-OK? 2 = TEMP22>
172 <TYPE? TEMP22 <TYPE-CODE FALSE> - PHRASE58>
181 <FRAME '
\1aREFERENCE>
182 <VEQUAL? FLG21 0 - TAG66>
184 <SET TEMP22 'T (TYPE ATOM)>
187 <SET TEMP22 %<> (TYPE FALSE)>
191 <CALL '
\1aREFERENCE 1 = STACK>
194 <CALL '
\1aMOVE-ARG 2 = WHERE10>
197 <TYPE? PF17 <TYPE-CODE FALSE> + PHRASE68>
200 <CALL '
\1aMAKE-TAG 0 = PF17>
202 <CALL '
\1aMAKE-TAG 0 = FLG21>
203 <FRAME '
\1aPGEN-DISPATCH>
214 <CALL '
\1aPGEN-DISPATCH 6>
215 <TYPE? WHERE10 <TYPE-CODE TEMP> + PHRASE73>
218 <CALL '
\1aGEN-TEMP 1 = WHERE10>
221 <FRAME '
\1aREFERENCE>
223 <CALL '
\1aREFERENCE 1 = STACK>
225 <CALL '
\1aMOVE-ARG 2>
226 <FRAME '
\1aBRANCH-TAG>
228 <CALL '
\1aBRANCH-TAG 1>
229 <FRAME '
\1aLABEL-TAG>
232 <CALL '
\1aLABEL-TAG 1>
233 <FRAME '
\1aDEALLOCATE-TEMP>
235 <CALL '
\1aDEALLOCATE-TEMP 1>
237 <FRAME '
\1aREFERENCE>
239 <CALL '
\1aREFERENCE 1 = STACK>
241 <CALL '
\1aMOVE-ARG 2>
242 <FRAME '
\1aLABEL-TAG>
245 <CALL '
\1aLABEL-TAG 1>
249 <CALL '
\1aMAKE-TAG 0 = PF17>
251 <CALL '
\1aMAKE-TAG 0 = FLG21>
255 <CALL '
\1aGEN 2 = TEMP22>
260 <NTHUV P15 3 = STACK>
263 <FRAME '
\1aFREE-TEMP>
266 <CALL '
\1aFREE-TEMP 1>
267 <TYPE? WHERE10 <TYPE-CODE TEMP> + PHRASE90>
270 <CALL '
\1aGEN-TEMP 1 = WHERE10>
273 <FRAME '
\1aREFERENCE>
275 <CALL '
\1aREFERENCE 1 = STACK>
277 <CALL '
\1aMOVE-ARG 2>
278 <FRAME '
\1aBRANCH-TAG>
280 <CALL '
\1aBRANCH-TAG 1>
281 <FRAME '
\1aLABEL-TAG>
284 <CALL '
\1aLABEL-TAG 1>
285 <FRAME '
\1aDEALLOCATE-TEMP>
287 <CALL '
\1aDEALLOCATE-TEMP 1>
289 <FRAME '
\1aREFERENCE>
291 <CALL '
\1aREFERENCE 1 = STACK>
293 <CALL '
\1aMOVE-ARG 2>
294 <FRAME '
\1aLABEL-TAG>
297 <CALL '
\1aLABEL-TAG 1>
304 <CALL '
\1aMOVE-ARG 2 = TEMP22>
309 <GFCN
\1aPRED? ("VALUE" <OR ATOM !<FALSE>> FIX) N4>
312 <GVAL 'PREDV = TEMP6>
313 <NTHUU TEMP6 N4 = TEMP6 (TYPE FIX)>
315 <VEQUAL? TEMP6 0 + TAG7 (TYPE FIX)>
322 <GFCN
\1aPRED-CHECK? ("VALUE" <OR ATOM FALSE> NODE ANY ANY) N4 TF5 W6>
323 <TEMP TEMP13 TEMP14 NT10 K8 TEMP24 TEMP25>
325 <GVAL 'PREDV = TEMP13>
326 <NTHUV N4 1 = TEMP14 (TYPE FIX)>
327 <NTHUU TEMP13 TEMP14 = TEMP14 (TYPE FIX)>
329 <VEQUAL? TEMP14 0 + TAG15 (TYPE FIX)>
333 <NTHUV N4 1 = NT10 (TYPE FIX)>
334 <VEQUAL? NT10 90 - TAG23 (TYPE FIX)>
335 <NTHUV N4 5 = K8 (TYPE LIST)>
337 <RESTL K8 1 = TEMP14 (TYPE LIST)>
338 <EMPL? TEMP14 + TAG23>
340 <TYPE? TF5 <TYPE-CODE FALSE> - BOOL21>
342 <EQUAL? W6 'FLUSHED - TAG22>
344 <NTHL K8 1 = TEMP14 (TYPE NODE)>
345 <NTHUV TEMP14 4 = TEMP14>
346 <EQUAL? TEMP14 '`SYSOP - TAG22>
350 <NTHL K8 1 = TEMP14 (TYPE NODE)>
352 <NTHUV TEMP14 4 = TEMP14 (TYPE ATOM)>
353 <NTHR TEMP14 3 = TEMP14 (RECORD-TYPE ATOM)>
354 <IFCAN "STRING-EQUAL?">
355 <STRING-EQUAL? TEMP14 "STRING-EQUAL?" - TAG23>
356 <ENDIF "STRING-EQUAL?">
357 <IFCANNOT "STRING-EQUAL?">
358 <SET TEMP13 "STRING-EQUAL?" (TYPE STRING)>
359 <LENUS TEMP14 = TEMP24 (TYPE FIX)>
360 <VEQUAL? TEMP24 13 - TAG23>
361 <LOOP (TEMP14 VALUE LENGTH) (TEMP13 VALUE LENGTH) (TEMP24 VALUE)>
363 <NTHUS TEMP14 1 = TEMP25>
364 <NTHUS TEMP13 1 = K8>
365 <VEQUAL? TEMP25 K8 - TAG23>
367 <RESTUS TEMP14 1 = TEMP14 (TYPE STRING)>
368 <RESTUS TEMP13 1 = TEMP13 (TYPE STRING)>
369 <SUB TEMP24 1 = TEMP24 (TYPE FIX)>
370 <GRTR? TEMP24 0 + TAG27 (TYPE FIX)>
371 <ENDIF "STRING-EQUAL?">
374 <VEQUAL? NT10 11 - TAG29 (TYPE FIX)>
375 <EQUAL? W6 'FLUSHED - TAG29>
376 <NTHUV N4 4 = TEMP13 (TYPE SYMTAB)>
377 <NTHUV TEMP13 3 = TEMP13>
378 <TYPE? TEMP13 <TYPE-CODE FALSE> - TAG29>
380 <GVAL 'PREDV = TEMP13>
381 <NTHUV N4 5 = TEMP14 (TYPE LIST)>
382 <RESTL TEMP14 1 = TEMP14 (TYPE LIST)>
383 <NTHL TEMP14 1 = TEMP14 (TYPE NODE)>
384 <NTHUV TEMP14 1 = TEMP14 (TYPE FIX)>
385 <NTHUU TEMP13 TEMP14 = TEMP14 (TYPE FIX)>
387 <VEQUAL? TEMP14 1 - TAG29 (TYPE FIX)>
391 <VEQUAL? NT10 5 + TAG57 (TYPE FIX)>
392 <VEQUAL? NT10 50 + TAG35 (TYPE FIX)>
396 <NTHUV N4 5 = K8 (TYPE LIST)>
398 <NTHL K8 1 = TEMP13 (TYPE NODE)>
399 <NTHUV TEMP13 1 = TEMP14 (TYPE FIX)>
400 <VEQUAL? TEMP14 2 + TAG36 (TYPE FIX)>
404 <NTHUV TEMP13 4 = TEMP14>
406 <TYPE? TEMP14 <TYPE-CODE FALSE> + TAG37>
410 <RESTL K8 1 = TEMP14 (TYPE LIST)>
411 <NTHL TEMP14 1 = N4 (TYPE NODE)>
413 <NTHUV N4 1 = TEMP14 (TYPE FIX)>
414 <VEQUAL? TEMP14 51 + TAG38 (TYPE FIX)>
421 <CALL '
\1aISTYPE? 1 = TEMP14>
422 <VEQUAL? TEMP14 'FALSE + TAG42>
428 <CALL '
\1aTYPE-AND 2 = TEMP14>
429 <TYPE? TEMP14 <TYPE-CODE FALSE> + TAG42>
433 <SET TEMP25 %<> (TYPE FALSE)>
434 <RESTL K8 1 = K8 (TYPE LIST)>
435 <RESTL K8 1 = K8 (TYPE LIST)>
441 <NTHUV TEMP13 1 = NT10 (TYPE FIX)>
443 <VEQUAL? NT10 3 + TAG56 (TYPE FIX)>
444 <VEQUAL? NT10 68 + TAG56 (TYPE FIX)>
446 <SET TEMP25 %<> (TYPE FALSE)>
449 <SET TEMP25 'T (TYPE ATOM)>
452 <RESTL K8 1 = K8 (TYPE LIST)>
455 <TYPE? TEMP25 <TYPE-CODE FALSE> + TAG57>
459 <NTHUV N4 12 = TEMP25>
460 <TYPE? TEMP25 <TYPE-CODE FALSE> + TAG58>
465 <NTHUV N4 10 = STACK (TYPE LIST)>
466 <CALL '
\1aACTIV? 1 = TEMP25>
467 <VEQUAL? TEMP25 0 + TAG60>
471 <EQUAL? W6 'FLUSHED + TAG61>
475 <SET TEMP13 %<> (TYPE FALSE)>
476 <NTHUV N4 10 = K8 (TYPE LIST)>
483 <NTHUV TEMP13 3 = TEMP14>
484 <TYPE? TEMP14 <TYPE-CODE FALSE> - TAG85>
486 <NTHUV TEMP13 9 = TEMP24>
489 <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE76>
490 <NTHUV TEMP24 1 = NT10 (TYPE FIX)>
491 <VEQUAL? NT10 98 + TAG85 (TYPE FIX)>
492 <VEQUAL? NT10 15 - BOOL81 (TYPE FIX)>
493 <NTHUV TEMP24 4 = TEMP14>
494 <EQUAL? TEMP14 'TUPLE + TAG85>
497 <VEQUAL? NT10 44 + TAG84 (TYPE FIX)>
498 <VEQUAL? NT10 45 + TAG84 (TYPE FIX)>
500 <SET TEMP13 %<> (TYPE FALSE)>
503 <NTHUV TEMP24 4 = TEMP14>
505 <EQUAL? TEMP14 'ITUPLE + TAG85>
507 <SET TEMP13 %<> (TYPE FALSE)>
510 <SET TEMP13 'T (TYPE ATOM)>
513 <RESTL K8 1 = K8 (TYPE LIST)>
516 <TYPE? TEMP13 <TYPE-CODE FALSE> - TAG62>
522 " Generate code for ==?. If types are the same then just compare values,
523 otherwise generate a full comparison."
526 <GFCN
\1a==-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
527 <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
537 <TEMP K15:LIST TEMP30 TY1-22 TY2-23 T1OK24 T2OK19 TEMP37 TEMP38 TYPSAM25 RW26 SDIR27 FLS28 B2-18>
539 <NTHUV NOD9 5 = K15 (TYPE LIST)>
540 <NTHL K15 1 = TEMP30 (TYPE NODE)>
541 <NTHUV TEMP30 3 = TY1-22>
543 <RESTL K15 1 = TEMP30 (TYPE LIST)>
544 <NTHL TEMP30 1 = TEMP30 (TYPE NODE)>
545 <NTHUV TEMP30 3 = TY2-23>
549 <CALL '
\1aISTYPE? 1 = T1OK24>
552 <CALL '
\1aISTYPE? 1 = T2OK19>
553 <VEQUAL? T1OK24 T2OK19 + TAG35>
557 <CFRAME = STACK (TYPE FRAME)>
558 <CALL '
\1aGETPROP 3 = TEMP37>
559 <CFRAME = TEMP38 (TYPE FRAME)>
560 <EQUAL? TEMP38 TEMP37 - TAG39>
567 <CFRAME = STACK (TYPE FRAME)>
568 <CALL '
\1aGETPROP 3 = TEMP38>
569 <CFRAME = TEMP30 (TYPE FRAME)>
570 <EQUAL? TEMP30 TEMP38 - TAG42>
574 <EQUAL? TEMP37 TEMP38 + TAG35>
576 <SET TEMP30 %<> (TYPE FALSE)>
581 <SET TYPSAM25 TEMP30>
585 <EQUAL? RW26 'FLUSHED - TAG43>
586 <SET FLS28 'T (TYPE ATOM)>
589 <SET FLS28 %<> (TYPE FALSE)>
591 <TYPE? TYPSAM25 <TYPE-CODE FALSE> - PHRASE46>
594 <PUSH <PRIMTYPE FIX>>
595 <CALL '
\1aTYPE-OK? 2 = TEMP30>
596 <TYPE? TEMP30 <TYPE-CODE FALSE> - PHRASE46>
600 <PUSH <PRIMTYPE FIX>>
601 <CALL '
\1aTYPE-OK? 2 = TEMP30>
602 <TYPE? TEMP30 <TYPE-CODE FALSE> - PHRASE46>
604 <FRAME '
\1aPOINTER-OVERLAP?>
607 <CALL '
\1aPOINTER-OVERLAP? 2 = TEMP30>
608 <TYPE? TEMP30 <TYPE-CODE FALSE> - PHRASE46>
610 <SET TYPSAM25 'T (TYPE ATOM)>
612 <NTHUV NOD9 9 = TEMP30>
613 <GVAL 'N==? = TEMP38>
614 <EQUAL? TEMP30 TEMP38 - TAG54>
616 <TYPE? NOTF11 <TYPE-CODE FALSE> - TAG53>
618 <SET NOTF11 'T (TYPE ATOM)>
621 <SET NOTF11 %<> (TYPE FALSE)>
623 <TYPE? TYPSAM25 <TYPE-CODE FALSE> - BOOL55>
629 <CALL '
\1aTYPE-OK? 2 = TEMP38>
630 <TYPE? TEMP38 <TYPE-CODE FALSE> - BOOL55>
632 <FRAME '
\1aCOMPILE-WARNING>
633 <PUSH "Arguments can never be ==? ">
634 <NTHUV NOD9 4 = STACK>
636 <CALL '
\1aCOMPILE-WARNING 3>
638 <NTHL K15 1 = TY1-22 (TYPE NODE)>
639 <NTHUV TY1-22 1 = TEMP38 (TYPE FIX)>
640 <VEQUAL? TEMP38 2 + BOOL60 (TYPE FIX)>
642 <NTHUV NOD9 8 = TEMP38>
644 <TYPE? TEMP38 <TYPE-CODE FALSE> - PHRASE59>
646 <RESTL K15 1 = TEMP38 (TYPE LIST)>
647 <NTHL TEMP38 1 = TY2-23 (TYPE NODE)>
649 <NTHUV TY2-23 1 = TEMP38 (TYPE FIX)>
650 <VEQUAL? TEMP38 2 + PHRASE59 (TYPE FIX)>
652 <NTHUV TY1-22 1 = TEMP38 (TYPE FIX)>
653 <GVAL 'SNODES = TEMP30>
654 <EMPUU? TEMP30 + PHRASE59>
655 <LOOP (TEMP38 VALUE) (TEMP30 LENGTH VALUE)>
657 <NTHUU TEMP30 1 = TEMP37>
658 <VEQUAL? TEMP37 TEMP38 + TAG62>
660 <RESTUU TEMP30 1 = TEMP30 (TYPE UVECTOR)>
661 <EMPUU? TEMP30 - TAG63>
664 <NTHUV TY2-23 1 = TEMP30 (TYPE FIX)>
666 <VEQUAL? TEMP30 10 + PHRASE59 (TYPE FIX)>
669 <RESTL K15 1 = TEMP30 (TYPE LIST)>
670 <NTHL TEMP30 1 = TEMP30 (TYPE NODE)>
673 <RESTL K15 1 = TEMP30 (TYPE LIST)>
674 <PUTL TEMP30 1 TY1-22>
683 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE66>
684 <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG69>
686 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG68>
688 <SET DIR13 'T (TYPE ATOM)>
691 <SET DIR13 %<> (TYPE FALSE)>
693 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE71>
695 <FRAME '
\1aDEALLOCATE-TEMP>
697 <FRAME '
\1aREFERENCE>
698 <TYPE? SDIR27 <TYPE-CODE FALSE> - TAG75>
699 <SET TEMP30 'T (TYPE ATOM)>
702 <SET TEMP30 %<> (TYPE FALSE)>
706 <CALL '
\1aREFERENCE 1 = STACK>
708 <CALL '
\1aMOVE-ARG 2 = STACK>
709 <CALL '
\1aDEALLOCATE-TEMP 1>
711 <FRAME '
\1aGEN-EQTST>
712 <NTHL K15 1 = STACK (TYPE NODE)>
713 <RESTL K15 1 = TEMP30 (TYPE LIST)>
715 <NTHL TEMP30 1 = STACK (TYPE NODE)>
721 <VEQUAL? FLS28 0 + PHRASE79>
726 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG81>
728 <SET TEMP30 'T (TYPE ATOM)>
731 <SET TEMP30 %<> (TYPE FALSE)>
737 <VEQUAL? FLS28 0 + PHRASE84>
738 <SET TEMP30 BRANCH12>
742 <CALL '
\1aMAKE-TAG 0 = B2-18>
747 <CALL '
\1aGEN-EQTST 7>
748 <VEQUAL? FLS28 0 + TAG89>
754 <FRAME '
\1aREFERENCE>
757 <CALL '
\1aREFERENCE 1 = STACK>
760 <CALL '
\1aMOVE-ARG 2 = STACK>
763 <CALL '
\1aMOVE-ARG 2 = RW26>
764 <FRAME '
\1aBRANCH-TAG>
767 <CALL '
\1aBRANCH-TAG 1>
768 <FRAME '
\1aLABEL-TAG>
771 <CALL '
\1aLABEL-TAG 1>
776 <CALL '
\1aMAKE-TAG 0 = BRANCH12>
777 <FRAME '
\1aGEN-EQTST>
778 <NTHL K15 1 = STACK (TYPE NODE)>
779 <RESTL K15 1 = TEMP38 (TYPE LIST)>
781 <NTHL TEMP38 1 = STACK (TYPE NODE)>
792 <CALL '
\1aGEN-EQTST 7>
793 <EQUAL? WHERE10 'DONT-CARE - PHRASE99>
796 <CALL '
\1aGEN-TEMP 1 = WHERE10>
799 <FRAME '
\1aREFERENCE>
801 <CALL '
\1aREFERENCE 1 = STACK>
803 <CALL '
\1aMOVE-ARG 2>
804 <FRAME '
\1aDEALLOCATE-TEMP>
806 <CALL '
\1aDEALLOCATE-TEMP 1>
807 <FRAME '
\1aBRANCH-TAG>
809 <CALL '
\1aMAKE-TAG 0 = B2-18>
811 <CALL '
\1aBRANCH-TAG 1>
812 <FRAME '
\1aLABEL-TAG>
815 <CALL '
\1aLABEL-TAG 1>
817 <FRAME '
\1aREFERENCE>
819 <CALL '
\1aREFERENCE 1 = STACK>
821 <CALL '
\1aMOVE-ARG 2>
822 <FRAME '
\1aLABEL-TAG>
825 <CALL '
\1aLABEL-TAG 1>
831 <CALL '
\1aMOVE-ARG 2 = TEMP30>
836 <GFCN
\1aGEN-EQTST ("VALUE" ANY NODE NODE ANY ANY ANY ANY ANY) N14 N25 T16 T27 DIR8 TYPS9 BR10>
837 <TEMP (TMP11 %<>) R213>
842 <CALL '
\1aGEN 1 = TMP11>
846 <CALL '
\1aGEN 1 = R213>
847 <TYPE? TYPS9 <TYPE-CODE FALSE> + PHRASE17>
849 <FRAME '
\1aGEN-VAL-==?>
856 <CALL '
\1aGEN-VAL-==? 4>
868 <FRAME '
\1aFREE-TEMP>
871 <CALL '
\1aFREE-TEMP 1>
872 <FRAME '
\1aFREE-TEMP>
875 <CALL '
\1aFREE-TEMP 1 = TMP11>
880 <GFCN
\1aPOINTER-OVERLAP? ("VALUE" ANY ANY ANY) TY14 TY25>
883 <TYPE? TY14 <TYPE-CODE FORM> + TAG10>
884 <TYPE? TY14 <TYPE-CODE SEGMENT> - PHRASE8>
886 <EMPL? TY14 + PHRASE8>
887 <NTHL TY14 1 = TEMP11>
888 <EQUAL? TEMP11 'OR - PHRASE8>
890 <SET TEMP11 %<> (TYPE FALSE)>
891 <RESTL TY14 1 = TEMP22 (TYPE LIST)>
893 <CHTYPE TEMP22 <TYPE-CODE LIST> = TEMP22>
897 <EMPL? TEMP22 + PHRASE71>
898 <NTHL TEMP22 1 = TEMP11>
899 <FRAME '
\1aPOINTER-OVERLAP?>
903 <CALL '
\1aPOINTER-OVERLAP? 2 = TEMP11>
904 <TYPE? TEMP11 <TYPE-CODE FALSE> + PHRASE25>
907 <RESTL TEMP22 1 = TEMP22 (TYPE LIST)>
910 <TYPE? TY25 <TYPE-CODE FORM> + TAG30>
911 <TYPE? TY25 <TYPE-CODE SEGMENT> - PHRASE28>
913 <EMPL? TY25 + PHRASE28>
914 <NTHL TY25 1 = TEMP22>
915 <EQUAL? TEMP22 'OR - PHRASE28>
917 <SET TEMP11 %<> (TYPE FALSE)>
918 <RESTL TY25 1 = TEMP22 (TYPE LIST)>
920 <CHTYPE TEMP22 <TYPE-CODE LIST> = TEMP22>
924 <EMPL? TEMP22 + MAPAP35>
925 <NTHL TEMP22 1 = TEMP11>
926 <FRAME '
\1aPOINTER-OVERLAP?>
930 <CALL '
\1aPOINTER-OVERLAP? 2 = TEMP11>
931 <TYPE? TEMP11 <TYPE-CODE FALSE> + PHRASE43>
934 <RESTL TEMP22 1 = TEMP22 (TYPE LIST)>
940 <TYPE? TY14 <TYPE-CODE FORM> + TAG49>
941 <TYPE? TY14 <TYPE-CODE SEGMENT> - BOOL48>
943 <EMPL? TY14 - BOOL47>
945 <TYPE? TY25 <TYPE-CODE FORM> + TAG51>
946 <TYPE? TY25 <TYPE-CODE SEGMENT> - PHRASE46>
948 <EMPL? TY25 + PHRASE46>
950 <TYPE? TEMP11 <TYPE-CODE FALSE> + PHRASE46>
957 <EQUAL? TEMP22 'PRIMTYPE + BOOL54>
960 <TYPE? TEMP11 <TYPE-CODE FORM> + TAG56>
961 <TYPE? TEMP11 <TYPE-CODE SEGMENT> - PHRASE53>
963 <EMPL? TEMP11 + PHRASE53>
964 <NTHL TEMP11 1 = TEMP22>
965 <EQUAL? TEMP22 'PRIMTYPE - PHRASE53>
973 <CALL '
\1aSTRUCTYP 1 = TEMP22>
978 <CALL '
\1aNTH 2 = TEMP11>
979 <EQUAL? TEMP22 TEMP11 - PHRASE58>
985 <FRAME '
\1aPOINTER-OVERLAP?>
990 <CALL '
\1aPOINTER-OVERLAP? 2 = TEMP11>
994 <EQUAL? TY14 TY25 - PHRASE64>
999 <CALL '
\1aSTRUCTYP 1 = TEMP11>
1000 <TYPE? TEMP11 <TYPE-CODE FALSE> + BOOL66>
1002 <FRAME '
\1aSTRUCTYP>
1004 <CALL '
\1aSTRUCTYP 1 = TEMP11>
1005 <TYPE? TEMP11 <TYPE-CODE FALSE> + BOOL66>
1007 <FRAME '
\1aSTRUCTYP>
1010 <CALL '
\1aSTRUCTYP 1 = TEMP11>
1011 <FRAME '
\1aSTRUCTYP>
1014 <CALL '
\1aSTRUCTYP 1 = TEMP22>
1015 <EQUAL? TEMP11 TEMP22 - PHRASE65>
1016 <DEAD TEMP11 TEMP22>
1020 <SET TEMP11 %<> (TYPE FALSE)>
1024 <END
\1aPOINTER-OVERLAP?>
1025 " Generate TYPE? code for all various cases."
1028 <GFCN
\1aTYPE?-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
1029 <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
1039 <TEMP B2-15 RW17 K18:LIST SDIR19 FLS20 (TEST?22 'T) (FIRST23 'T) TEMP28 REG16 B3-21>
1042 <NTHUV NOD9 5 = K18 (TYPE LIST)>
1044 <EQUAL? RW17 'FLUSHED - TAG24>
1045 <SET FLS20 'T (TYPE ATOM)>
1048 <SET FLS20 %<> (TYPE FALSE)>
1050 <NTHUV NOD9 3 = TEMP28>
1051 <EQUAL? TEMP28 'FALSE - PHRASE27>
1053 <FRAME '
\1aCOMPILE-WARNING>
1054 <PUSH "TYPE? never true: ">
1056 <CALL '
\1aCOMPILE-WARNING 2>
1057 <SET TEST?22 #FALSE (1) (TYPE FALSE)>
1060 <FRAME '
\1aTYPE-OK?>
1061 <NTHUV NOD9 3 = STACK>
1063 <CALL '
\1aTYPE-OK? 2 = TEMP28>
1064 <TYPE? TEMP28 <TYPE-CODE FALSE> - PHRASE30>
1066 <FRAME '
\1aCOMPILE-WARNING>
1067 <PUSH "TYPE? always true: ">
1069 <CALL '
\1aCOMPILE-WARNING 2>
1070 <SET TEST?22 #FALSE (2) (TYPE FALSE)>
1073 <NTHL K18 1 = STACK (TYPE NODE)>
1075 <CALL '
\1aGEN 2 = REG16>
1076 <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG36>
1077 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG35>
1079 <SET DIR13 'T (TYPE ATOM)>
1082 <SET DIR13 %<> (TYPE FALSE)>
1084 <RESTL K18 1 = K18 (TYPE LIST)>
1085 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE38>
1086 <VEQUAL? FLS20 0 + PHRASE38>
1087 <RESTL K18 1 = TEMP28 (TYPE LIST)>
1088 <EMPL? TEMP28 + BOOL40 (TYPE LIST)>
1090 <TYPE? DIR13 <TYPE-CODE FALSE> - BOOL40>
1091 <FRAME '
\1aMAKE-TAG>
1092 <CALL '
\1aMAKE-TAG 0 = B2-15>
1097 <RESTL K18 1 = FLS20 (TYPE LIST)>
1098 <EMPL? FLS20 - PHRASE45 (TYPE LIST)>
1100 <FRAME '
\1aFREE-TEMP>
1103 <CALL '
\1aFREE-TEMP 2>
1104 <TYPE? TEST?22 <TYPE-CODE FALSE> + PHRASE49>
1105 <FRAME '
\1aGEN-TYPE?>
1108 <NTHL K18 1 = FLS20 (TYPE NODE)>
1110 <NTHUV FLS20 4 = STACK>
1114 <CALL '
\1aGEN-TYPE? 4>
1116 <TYPE? TEST?22 <TYPE-CODE FALSE> - BOOL54>
1117 <TYPE? DIR13 <TYPE-CODE FALSE> + BOOL54>
1118 <NTHL TEST?22 1 = FLS20>
1119 <EQUAL? FLS20 2 + BOOL53>
1122 <TYPE? TEST?22 <TYPE-CODE FALSE> - PHRASE52>
1123 <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE52>
1125 <NTHL TEST?22 1 = FLS20>
1127 <EQUAL? FLS20 1 - PHRASE52>
1130 <FRAME '
\1aBRANCH-TAG>
1133 <CALL '
\1aBRANCH-TAG 1>
1135 <TYPE? B2-15 <TYPE-CODE UNBOUND> + PHRASE246>
1136 <FRAME '
\1aLABEL-TAG>
1139 <CALL '
\1aLABEL-TAG 1>
1142 <TYPE? TEST?22 <TYPE-CODE FALSE> + PHRASE61>
1143 <FRAME '
\1aGEN-TYPE?>
1145 <NTHL K18 1 = FLS20 (TYPE NODE)>
1146 <NTHUV FLS20 4 = STACK>
1148 <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE64>
1149 <SET FLS20 BRANCH12>
1157 <CALL '
\1aGEN-TYPE? 4>
1158 <FRAME '
\1aGEN-TYPE?>
1160 <RESTL K18 1 = FLS20 (TYPE LIST)>
1161 <NTHL FLS20 1 = FLS20 (TYPE NODE)>
1162 <NTHUV FLS20 4 = STACK>
1164 <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE68>
1165 <SET FLS20 BRANCH12>
1173 <CALL '
\1aGEN-TYPE? 4>
1175 <RESTL K18 1 = K18 (TYPE LIST)>
1176 <RESTL K18 1 = K18 (TYPE LIST)>
1177 <EMPL? K18 - AGAIN43 (TYPE LIST)>
1178 <TYPE? DIR13 <TYPE-CODE FALSE> - BOOL75>
1179 <TYPE? TEST?22 <TYPE-CODE FALSE> - BOOL77>
1181 <TYPE? TEST?22 <TYPE-CODE FALSE> - PHRASE246>
1182 <TYPE? DIR13 <TYPE-CODE FALSE> + BOOL78>
1183 <NTHL TEST?22 1 = FLS20>
1184 <EQUAL? FLS20 2 + BOOL77>
1187 <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE246>
1189 <NTHL TEST?22 1 = FLS20>
1191 <EQUAL? FLS20 1 - PHRASE246>
1194 <FRAME '
\1aBRANCH-TAG>
1197 <CALL '
\1aBRANCH-TAG 1>
1198 <FRAME '
\1aLABEL-TAG>
1201 <CALL '
\1aLABEL-TAG 1>
1204 <VEQUAL? FLS20 0 + BOOL82>
1206 <TYPE? TEST?22 <TYPE-CODE FALSE> - BOOL82>
1207 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE246>
1209 <TYPE? NOTF11 <TYPE-CODE FALSE> - BOOL84>
1211 <TYPE? BRANCH12 <TYPE-CODE FALSE> - TAG86>
1212 <SET FLS20 'T (TYPE ATOM)>
1215 <SET FLS20 %<> (TYPE FALSE)>
1217 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG88>
1218 <SET TEMP28 'T (TYPE ATOM)>
1221 <SET TEMP28 %<> (TYPE FALSE)>
1223 <VEQUAL? FLS20 TEMP28 + PHRASE83>
1225 <TYPE? SETF14 <TYPE-CODE FALSE> - PHRASE83>
1227 <FRAME '
\1aMAKE-TAG>
1228 <CALL '
\1aMAKE-TAG 0 = B2-15>
1229 <FRAME '
\1aMAKE-TAG>
1230 <CALL '
\1aMAKE-TAG 0 = B3-21>
1231 <TYPE? TEST?22 <TYPE-CODE FALSE> + PHRASE94>
1232 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE96>
1234 <EQUAL? WHERE10 'DONT-CARE - PHRASE98>
1235 <FRAME '
\1aGEN-TEMP>
1237 <CALL '
\1aGEN-TEMP 1 = WHERE10>
1239 <FRAME '
\1aDEALLOCATE-TEMP>
1240 <FRAME '
\1aMOVE-ARG>
1241 <FRAME '
\1aREFERENCE>
1242 <TYPE? SDIR19 <TYPE-CODE FALSE> - TAG103>
1243 <SET TEMP28 'T (TYPE ATOM)>
1246 <SET TEMP28 %<> (TYPE FALSE)>
1250 <CALL '
\1aREFERENCE 1 = STACK>
1252 <CALL '
\1aMOVE-ARG 2 = STACK>
1253 <CALL '
\1aDEALLOCATE-TEMP 1>
1258 <RESTL K18 1 = FLS20 (TYPE LIST)>
1259 <EMPL? FLS20 - PHRASE108 (TYPE LIST)>
1261 <FRAME '
\1aFREE-TEMP>
1264 <CALL '
\1aFREE-TEMP 2>
1265 <FRAME '
\1aGEN-TYPE?>
1268 <NTHL K18 1 = FLS20 (TYPE NODE)>
1270 <NTHUV FLS20 4 = STACK>
1273 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE112>
1274 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG113>
1276 <SET FLS20 'T (TYPE ATOM)>
1279 <SET FLS20 %<> (TYPE FALSE)>
1287 <CALL '
\1aGEN-TYPE? 4>
1290 <FRAME '
\1aGEN-TYPE?>
1292 <NTHL K18 1 = FLS20 (TYPE NODE)>
1293 <NTHUV FLS20 4 = STACK>
1295 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE121>
1296 <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE119>
1299 <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE119>
1309 <CALL '
\1aGEN-TYPE? 4>
1310 <FRAME '
\1aGEN-TYPE?>
1312 <RESTL K18 1 = FLS20 (TYPE LIST)>
1313 <NTHL FLS20 1 = FLS20 (TYPE NODE)>
1314 <NTHUV FLS20 4 = STACK>
1316 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE128>
1317 <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE126>
1320 <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE126>
1330 <CALL '
\1aGEN-TYPE? 4>
1331 <RESTL K18 1 = K18 (TYPE LIST)>
1332 <RESTL K18 1 = K18 (TYPE LIST)>
1333 <EMPL? K18 - AGAIN106 (TYPE LIST)>
1334 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE136>
1335 <TYPE? DIR13 <TYPE-CODE FALSE> + EXIT105>
1339 <TYPE? DIR13 <TYPE-CODE FALSE> - EXIT105>
1342 <FRAME '
\1aBRANCH-TAG>
1344 <CALL '
\1aBRANCH-TAG 1>
1346 <FRAME '
\1aLABEL-TAG>
1349 <CALL '
\1aLABEL-TAG 1>
1350 <EQUAL? WHERE10 'DONT-CARE - PHRASE141>
1351 <FRAME '
\1aGEN-TEMP>
1353 <CALL '
\1aGEN-TEMP 1 = WHERE10>
1355 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE144>
1356 <FRAME '
\1aMOVE-ARG>
1357 <FRAME '
\1aREFERENCE>
1360 <CALL '
\1aREFERENCE 1 = STACK>
1363 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1364 <FRAME '
\1aBRANCH-TAG>
1367 <CALL '
\1aBRANCH-TAG 1>
1368 <FRAME '
\1aLABEL-TAG>
1371 <CALL '
\1aLABEL-TAG 1>
1374 <FRAME '
\1aTRUE-FALSE>
1380 <CALL '
\1aTRUE-FALSE 3>
1383 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE153>
1384 <TYPE? DIR13 <TYPE-CODE FALSE> + BOOL157>
1385 <NTHL TEST?22 1 = FLS20>
1386 <EQUAL? FLS20 2 + BOOL156>
1389 <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE246>
1391 <NTHL TEST?22 1 = FLS20>
1393 <EQUAL? FLS20 1 - PHRASE246>
1396 <FRAME '
\1aMOVE-ARG>
1397 <FRAME '
\1aREFERENCE>
1400 <CALL '
\1aREFERENCE 1 = STACK>
1403 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1404 <FRAME '
\1aBRANCH-TAG>
1407 <CALL '
\1aBRANCH-TAG 1>
1410 <FRAME '
\1aMOVE-ARG>
1411 <NTHL TEST?22 1 = FLS20>
1413 <EQUAL? FLS20 2 - TAG164>
1422 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1425 <TYPE? WHERE10 <TYPE-CODE TEMP> + PHRASE174>
1426 <TYPE? REG16 <TYPE-CODE TEMP> - PHRASE170>
1427 <EMPL? K18 + PHRASE170>
1428 <RESTL K18 1 = FLS20 (TYPE LIST)>
1429 <EMPL? FLS20 - PHRASE170>
1431 <NTHUV REG16 2 = FLS20 (TYPE FIX)>
1432 <GRTR? FLS20 1 + PHRASE170 (TYPE FIX)>
1437 <FRAME '
\1aGEN-TEMP>
1439 <CALL '
\1aGEN-TEMP 1 = WHERE10>
1441 <FRAME '
\1aMAKE-TAG>
1442 <CALL '
\1aMAKE-TAG 0 = B2-15>
1443 <TYPE? TEST?22 <TYPE-CODE FALSE> - BOOL179>
1444 <EMPL? K18 + PHRASE178>
1445 <RESTL K18 1 = FLS20 (TYPE LIST)>
1446 <EMPL? FLS20 + PHRASE178>
1448 <NTHL TEST?22 1 = FLS20>
1449 <EQUAL? FLS20 2 - PHRASE178>
1452 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE182>
1454 <FRAME '
\1aDEALLOCATE-TEMP>
1455 <FRAME '
\1aMOVE-ARG>
1456 <FRAME '
\1aREFERENCE>
1458 <CALL '
\1aREFERENCE 1 = STACK>
1461 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1463 <CALL '
\1aDEALLOCATE-TEMP 1>
1465 <SET FLS20 K18 (TYPE LIST)>
1470 <EMPL? FLS20 + PHRASE246>
1472 <NTHL K18 1 = SDIR19 (TYPE NODE)>
1473 <TYPE? TEST?22 <TYPE-CODE FALSE> - BOOL200>
1474 <RESTL K18 1 = TEMP28 (TYPE LIST)>
1475 <EMPL? TEMP28 + PHRASE199 (TYPE LIST)>
1478 <FRAME '
\1aGEN-TYPE?>
1480 <NTHUV SDIR19 4 = STACK>
1481 <TYPE? BRANCH12 <TYPE-CODE FALSE> + BOOL205>
1482 <TYPE? DIR13 <TYPE-CODE FALSE> - BOOL205>
1483 <RESTL K18 1 = TEMP28 (TYPE LIST)>
1484 <EMPL? TEMP28 + PHRASE204 (TYPE LIST)>
1487 <FRAME '
\1aMAKE-TAG>
1488 <CALL '
\1aMAKE-TAG 0 = B3-21>
1492 <SET TEMP28 BRANCH12>
1497 <CALL '
\1aGEN-TYPE? 4>
1499 <FRAME '
\1aMOVE-ARG>
1500 <FRAME '
\1aREFERENCE>
1501 <NTHUV SDIR19 4 = STACK>
1503 <CALL '
\1aREFERENCE 1 = STACK>
1506 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1507 <VEQUAL? FIRST23 0 - PHRASE211>
1508 <FRAME '
\1aDEALLOCATE-TEMP>
1510 <CALL '
\1aDEALLOCATE-TEMP 1>
1513 <SET FIRST23 %<> (TYPE FALSE)>
1515 <RESTL K18 1 = TEMP28 (TYPE LIST)>
1517 <EMPL? TEMP28 - PHRASE215 (TYPE LIST)>
1519 <FRAME '
\1aLABEL-TAG>
1521 <CALL '
\1aLABEL-TAG 1>
1522 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE218>
1523 <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE218>
1524 <FRAME '
\1aBRANCH-TAG>
1526 <CALL '
\1aBRANCH-TAG 1>
1527 <FRAME '
\1aLABEL-TAG>
1529 <CALL '
\1aLABEL-TAG 1>
1532 <TYPE? BRANCH12 <TYPE-CODE FALSE> - PHRASE222>
1533 <FRAME '
\1aBRANCH-TAG>
1534 <FRAME '
\1aMAKE-TAG>
1535 <CALL '
\1aMAKE-TAG 0 = B2-15>
1537 <CALL '
\1aBRANCH-TAG 1>
1538 <FRAME '
\1aLABEL-TAG>
1540 <CALL '
\1aLABEL-TAG 1>
1541 <FRAME '
\1aDEALLOCATE-TEMP>
1542 <FRAME '
\1aMOVE-ARG>
1543 <FRAME '
\1aREFERENCE>
1545 <CALL '
\1aREFERENCE 1 = STACK>
1547 <CALL '
\1aMOVE-ARG 2 = STACK>
1548 <CALL '
\1aDEALLOCATE-TEMP 1>
1549 <FRAME '
\1aLABEL-TAG>
1551 <CALL '
\1aLABEL-TAG 1>
1553 <FRAME '
\1aFREE-TEMP>
1556 <CALL '
\1aFREE-TEMP 2>
1559 <FRAME '
\1aBRANCH-TAG>
1561 <CALL '
\1aBRANCH-TAG 1>
1562 <FRAME '
\1aLABEL-TAG>
1564 <CALL '
\1aLABEL-TAG 1>
1566 <RESTL FLS20 1 = FLS20 (TYPE LIST)>
1569 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE236>
1570 <TYPE? DIR13 <TYPE-CODE FALSE> + BOOL240>
1571 <NTHL TEST?22 1 = FLS20>
1572 <EQUAL? FLS20 2 + BOOL239>
1575 <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE246>
1576 <NTHL TEST?22 1 = FLS20>
1578 <EQUAL? FLS20 1 - PHRASE246>
1581 <FRAME '
\1aMOVE-ARG>
1582 <FRAME '
\1aREFERENCE>
1585 <TYPE? FLS20 <TYPE-CODE FALSE> + BOOL244>
1586 <NTHL K18 1 = B2-15 (TYPE NODE)>
1588 <NTHUV B2-15 4 = FLS20>
1593 <CALL '
\1aREFERENCE 1 = STACK>
1596 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1597 <FRAME '
\1aBRANCH-TAG>
1600 <CALL '
\1aBRANCH-TAG 1>
1603 <FRAME '
\1aMOVE-ARG>
1604 <FRAME '
\1aREFERENCE>
1607 <TYPE? FLS20 <TYPE-CODE FALSE> + BOOL249>
1608 <NTHL K18 1 = B2-15 (TYPE NODE)>
1610 <NTHUV B2-15 4 = FLS20>
1615 <CALL '
\1aREFERENCE 1 = STACK>
1618 <CALL '
\1aMOVE-ARG 2 = WHERE10>
1620 <FRAME '
\1aMOVE-ARG>
1625 <CALL '
\1aMOVE-ARG 2 = FLS20>
1630 <GFCN
\1aPGEN-DISPATCH ("VALUE" ANY ANY ANY ANY ANY ANY ANY) N4 W5 NF6 B7 D8 SF9>
1633 <NTHUV N4 1 = TEMP35 (TYPE FIX)>
1634 <VEQUAL? TEMP35 90 - CASE12>
1635 <FRAME '
\1aCALL-GEN>
1646 <CALL '
\1aCALL-GEN 5 = TEMP35>
1650 <VEQUAL? TEMP35 7 - CASE13>
1651 <FRAME '
\1aCOND-GEN>
1662 <CALL '
\1aCOND-GEN 5 = TEMP35>
1666 <VEQUAL? TEMP35 12 - CASE14>
1678 <CALL '
\1aOR-GEN 5 = TEMP35>
1682 <VEQUAL? TEMP35 13 - CASE15>
1694 <CALL '
\1aAND-GEN 5 = TEMP35>
1698 <VEQUAL? TEMP35 19 - CASE16>
1712 <CALL '
\1a0-TEST 6 = TEMP35>
1716 <VEQUAL? TEMP35 20 - CASE17>
1730 <CALL '
\1aNOT-GEN 6 = TEMP35>
1734 <VEQUAL? TEMP35 21 - CASE18>
1748 <CALL '
\1a1?-GEN 6 = TEMP35>
1752 <VEQUAL? TEMP35 22 - CASE19>
1753 <FRAME '
\1aTEST-GEN>
1766 <CALL '
\1aTEST-GEN 6 = TEMP35>
1770 <VEQUAL? TEMP35 23 - CASE20>
1784 <CALL '
\1a==-GEN 6 = TEMP35>
1788 <VEQUAL? TEMP35 24 - CASE21>
1789 <FRAME '
\1aTYPE?-GEN>
1802 <CALL '
\1aTYPE?-GEN 6 = TEMP35>
1806 <VEQUAL? TEMP35 26 - CASE22>
1820 <CALL '
\1aMT-GEN 6 = TEMP35>
1824 <VEQUAL? TEMP35 91 - CASE23>
1838 <CALL '
\1aMT-GEN 6 = TEMP35>
1842 <VEQUAL? TEMP35 43 - CASE24>
1843 <FRAME '
\1aASSIGNED?-GEN>
1856 <CALL '
\1aASSIGNED?-GEN 6 = TEMP35>
1860 <VEQUAL? TEMP35 56 - CASE25>
1874 <CALL '
\1aGET-GEN 6 = TEMP35>
1878 <VEQUAL? TEMP35 57 - CASE26>
1879 <FRAME '
\1aGET2-GEN>
1892 <CALL '
\1aGET2-GEN 6 = TEMP35>
1896 <VEQUAL? TEMP35 73 - CASE27>
1897 <FRAME '
\1aMEMQ-GEN>
1910 <CALL '
\1aMEMQ-GEN 6 = TEMP35>
1914 <VEQUAL? TEMP35 69 - CASE28>
1915 <FRAME '
\1aLENGTH?-GEN>
1928 <CALL '
\1aLENGTH?-GEN 6 = TEMP35>
1932 <VEQUAL? TEMP35 92 - CASE29>
1933 <FRAME '
\1aGASSIGNED?-GEN>
1946 <CALL '
\1aGASSIGNED?-GEN 6 = TEMP35>
1950 <VEQUAL? TEMP35 97 - CASE30>
1951 <FRAME '
\1aVALID-TYPE?-GEN>
1964 <CALL '
\1aVALID-TYPE?-GEN 6 = TEMP35>
1968 <VEQUAL? TEMP35 95 - CASE31>
1969 <FRAME '
\1a=?-STRING-GEN>
1982 <CALL '
\1a=?-STRING-GEN 6 = TEMP35>
1986 <VEQUAL? TEMP35 11 - CASE32>
1998 <CALL '
\1aSET-GEN 5 = TEMP35>
2002 <VEQUAL? TEMP35 50 - CASE33>
2003 <FRAME '
\1aMAPFR-GEN>
2014 <CALL '
\1aMAPFR-GEN 5 = TEMP35>
2018 <VEQUAL? TEMP35 5 - CASE34>
2020 <FRAME '
\1aPROG-REP-GEN>
2031 <CALL '
\1aPROG-REP-GEN 5 = TEMP35>
2035 <FRAME '
\1aCOMPILE-LOSSAGE>
2036 <PUSH "Inconsisent use of predicate internally: ">
2039 <CALL '
\1aCOMPILE-LOSSAGE 2 = TEMP35>
2042 <END
\1aPGEN-DISPATCH>
2044 <GFCN
\1aPRED-BRANCH-GEN ("VALUE" ANY ANY NODE ANY "OPTIONAL" ANY ANY ANY) TAG8 NOD9 TF10 WHERE11 NF12 SETF13>
2045 <OPT-DISPATCH 3 %<> OPT4 OPT5 OPT6 OPT7>
2055 <EQUAL? WHERE11 'FLUSHED - PHRASE18>
2056 <SET W2-14 'DONT-CARE (TYPE ATOM)>
2061 <NTHUV NOD9 3 = TEMP22>
2062 <EQUAL? TEMP22 'NO-RETURN - PHRASE21>
2069 <GVAL 'NO-DATUM = TEMP22>
2073 <FRAME '
\1aPRED-CHECK?>
2077 <CALL '
\1aPRED-CHECK? 3 = TEMP22>
2078 <TYPE? TEMP22 <TYPE-CODE FALSE> + PHRASE24>
2080 <FRAME '
\1aPGEN-DISPATCH>
2093 <CALL '
\1aPGEN-DISPATCH 6 = TEMP22>
2097 <TYPE? NF12 <TYPE-CODE FALSE> + PHRASE28>
2102 <CALL '
\1aGEN 2 = W2-14>
2103 <EQUAL? WHERE11 'FLUSHED - PHRASE31>
2109 <TYPE? TF10 <TYPE-CODE FALSE> - TAG33>
2111 <SET TEMP22 'T (TYPE ATOM)>
2114 <SET TEMP22 %<> (TYPE FALSE)>
2118 <NTHUV NOD9 3 = STACK>
2120 <CALL '
\1aD-B-TAG 4 = TEMP22>
2125 <FRAME '
\1aMAKE-TAG>
2126 <CALL '
\1aMAKE-TAG 0 = TEMP22>
2130 <NTHUV NOD9 3 = STACK>
2132 <CALL '
\1aD-B-TAG 4>
2133 <FRAME '
\1aFREE-TEMP>
2136 <CALL '
\1aFREE-TEMP 1>
2137 <FRAME '
\1aMOVE-ARG>
2138 <FRAME '
\1aREFERENCE>
2141 <CALL '
\1aREFERENCE 1 = STACK>
2144 <CALL '
\1aMOVE-ARG 2 = W2-14>
2145 <FRAME '
\1aBRANCH-TAG>
2148 <CALL '
\1aBRANCH-TAG 1>
2149 <FRAME '
\1aLABEL-TAG>
2152 <CALL '
\1aLABEL-TAG 1>
2160 <CALL '
\1aGEN 2 = W2-14>
2167 <NTHUV NOD9 3 = STACK>
2169 <CALL '
\1aD-B-TAG 4>
2170 <FRAME '
\1aMOVE-ARG>
2175 <CALL '
\1aMOVE-ARG 2 = TEMP22>
2178 <END
\1aPRED-BRANCH-GEN>
\r\r
2180 <GFCN
\1aVALID-TYPE?-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) N9 W10 NOTF11 BRANCH12 DIR13 SETF14>
2181 <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
2191 <TEMP TEMP22 NN15 RW17 FLS18 TEMP45>
2193 <NTHUV N9 5 = TEMP22 (TYPE LIST)>
2194 <NTHL TEMP22 1 = NN15 (TYPE NODE)>
2198 <EQUAL? RW17 'FLUSHED - TAG23>
2199 <SET FLS18 'T (TYPE ATOM)>
2202 <SET FLS18 %<> (TYPE FALSE)>
2204 <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG28>
2205 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG27>
2207 <SET DIR13 'T (TYPE ATOM)>
2210 <SET DIR13 %<> (TYPE FALSE)>
2215 <CALL '
\1aGEN 1 = NN15>
2216 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE31>
2217 <VEQUAL? FLS18 0 + PHRASE31>
2225 <FRAME '
\1aFREE-TEMP>
2228 <CALL '
\1aFREE-TEMP 1>
2229 <GVAL 'NO-DATUM = TEMP22>
2233 <VEQUAL? FLS18 0 + TAG36>
2235 <TYPE? BRANCH12 <TYPE-CODE FALSE> - TAG36>
2238 <TYPE? NOTF11 <TYPE-CODE FALSE> - BOOL38>
2240 <TYPE? BRANCH12 <TYPE-CODE FALSE> - TAG40>
2241 <SET FLS18 'T (TYPE ATOM)>
2244 <SET FLS18 %<> (TYPE FALSE)>
2246 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG43>
2247 <SET TEMP45 'T (TYPE ATOM)>
2250 <SET TEMP45 %<> (TYPE FALSE)>
2252 <VEQUAL? FLS18 TEMP45 + PHRASE37>
2254 <TYPE? SETF14 <TYPE-CODE FALSE> - PHRASE37>
2256 <FRAME '
\1aMAKE-TAG>
2257 <CALL '
\1aMAKE-TAG 0 = FLS18>
2258 <FRAME '
\1aMAKE-TAG>
2259 <CALL '
\1aMAKE-TAG 0>
2263 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE50>
2264 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG51>
2266 <SET TEMP45 'T (TYPE ATOM)>
2269 <SET TEMP45 %<> (TYPE FALSE)>
2278 <FRAME '
\1aFREE-TEMP>
2281 <CALL '
\1aFREE-TEMP 1>
2282 <EQUAL? W10 'DONT-CARE - PHRASE56>
2283 <FRAME '
\1aGEN-TEMP>
2285 <CALL '
\1aGEN-TEMP 1 = W10>
2287 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE59>
2288 <FRAME '
\1aMOVE-ARG>
2289 <FRAME '
\1aREFERENCE>
2291 <CALL '
\1aREFERENCE 1 = STACK>
2294 <CALL '
\1aMOVE-ARG 2 = W10>
2295 <FRAME '
\1aBRANCH-TAG>
2298 <CALL '
\1aBRANCH-TAG 1>
2299 <FRAME '
\1aLABEL-TAG>
2302 <CALL '
\1aLABEL-TAG 1>
2303 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE71>
2305 <FRAME '
\1aDEALLOCATE-TEMP>
2307 <CALL '
\1aDEALLOCATE-TEMP 1>
2308 <FRAME '
\1aMOVE-ARG>
2309 <FRAME '
\1aREFERENCE>
2310 <TYPE? TEMP22 <TYPE-CODE FALSE> - TAG69>
2312 <SET TEMP45 'T (TYPE ATOM)>
2315 <SET TEMP45 %<> (TYPE FALSE)>
2319 <CALL '
\1aREFERENCE 1 = STACK>
2321 <CALL '
\1aMOVE-ARG 2>
2324 <FRAME '
\1aTRUE-FALSE>
2330 <CALL '
\1aTRUE-FALSE 3>
2332 <FRAME '
\1aMOVE-ARG>
2337 <CALL '
\1aMOVE-ARG 2 = TEMP22>
2341 <FRAME '
\1aMAKE-TAG>
2342 <CALL '
\1aMAKE-TAG 0 = FLS18>
2343 <FRAME '
\1aMAKE-TAG>
2344 <CALL '
\1aMAKE-TAG 0 = TEMP22>
2345 <TYPE? W10 <TYPE-CODE TEMP> + PHRASE84>
2346 <TYPE? NN15 <TYPE-CODE TEMP> - PHRASE80>
2347 <NTHUV NN15 2 = TEMP45 (TYPE FIX)>
2348 <GRTR? TEMP45 1 + PHRASE80 (TYPE FIX)>
2353 <FRAME '
\1aGEN-TEMP>
2355 <CALL '
\1aGEN-TEMP 1 = W10>
2357 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE87>
2359 <FRAME '
\1aDEALLOCATE-TEMP>
2360 <FRAME '
\1aMOVE-ARG>
2361 <FRAME '
\1aREFERENCE>
2363 <CALL '
\1aREFERENCE 1 = STACK>
2365 <CALL '
\1aMOVE-ARG 2 = STACK>
2366 <CALL '
\1aDEALLOCATE-TEMP 1>
2370 <SET TEMP45 BRANCH12>
2371 <TYPE? TEMP45 <TYPE-CODE FALSE> - PHRASE93>
2380 <FRAME '
\1aFREE-TEMP>
2383 <CALL '
\1aFREE-TEMP 1>
2384 <TYPE? BRANCH12 <TYPE-CODE FALSE> - PHRASE96>
2386 <FRAME '
\1aBRANCH-TAG>
2388 <CALL '
\1aBRANCH-TAG 1>
2389 <FRAME '
\1aLABEL-TAG>
2392 <CALL '
\1aLABEL-TAG 1>
2393 <FRAME '
\1aMOVE-ARG>
2394 <FRAME '
\1aREFERENCE>
2396 <CALL '
\1aREFERENCE 1 = STACK>
2398 <CALL '
\1aMOVE-ARG 2>
2399 <FRAME '
\1aLABEL-TAG>
2402 <CALL '
\1aLABEL-TAG 1>
2404 <FRAME '
\1aMOVE-ARG>
2409 <CALL '
\1aMOVE-ARG 2 = TEMP22>
2412 <END
\1aVALID-TYPE?-GEN>
\r\r
2414 <GFCN
\1aTYPE-C-GEN ("VALUE" ANY ANY ANY) N4 W5>
2415 <TEMP TEMP9 DATA6 RW7>
2418 <NTHUV N4 5 = TEMP9 (TYPE LIST)>
2420 <NTHL TEMP9 1 = STACK (TYPE NODE)>
2422 <CALL '
\1aGEN 1 = DATA6>
2424 <TYPE? W5 <TYPE-CODE TEMP> + PHRASE17>
2425 <TYPE? DATA6 <TYPE-CODE TEMP> - PHRASE13>
2426 <NTHUV DATA6 2 = TEMP9 (TYPE FIX)>
2427 <GRTR? TEMP9 1 + PHRASE13 (TYPE FIX)>
2432 <FRAME '
\1aGEN-TEMP>
2434 <CALL '
\1aGEN-TEMP 1 = W5>
2440 <FRAME '
\1aFREE-TEMP>
2443 <CALL '
\1aFREE-TEMP 1>
2444 <FRAME '
\1aMOVE-ARG>
2449 <CALL '
\1aMOVE-ARG 2 = TEMP9>
2454 <GFCN
\1a=?-STRING-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) N9 W10 NOTF11 BRANCH12 DIR13 SETF14>
2455 <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
2465 <TEMP TEMP24 N1-15:NODE N2-16:NODE SDIR17 RW18 FLS19 B2-20>
2467 <NTHUV N9 5 = TEMP24 (TYPE LIST)>
2468 <NTHL TEMP24 1 = N1-15 (TYPE NODE)>
2470 <NTHUV N9 5 = TEMP24 (TYPE LIST)>
2471 <RESTL TEMP24 1 = TEMP24 (TYPE LIST)>
2472 <NTHL TEMP24 1 = N2-16 (TYPE NODE)>
2476 <EQUAL? RW18 'FLUSHED - TAG25>
2477 <SET FLS19 'T (TYPE ATOM)>
2480 <SET FLS19 %<> (TYPE FALSE)>
2482 <NTHUV N9 4 = TEMP24>
2483 <EQUAL? TEMP24 'N=? - TAG30>
2485 <TYPE? NOTF11 <TYPE-CODE FALSE> - TAG29>
2487 <SET NOTF11 'T (TYPE ATOM)>
2490 <SET NOTF11 %<> (TYPE FALSE)>
2492 <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE32>
2493 <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG36>
2495 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG35>
2497 <SET DIR13 'T (TYPE ATOM)>
2500 <SET DIR13 %<> (TYPE FALSE)>
2502 <FRAME '
\1aDO-STR-EQ>
2507 <VEQUAL? FLS19 0 + PHRASE39>
2512 <TYPE? DIR13 <TYPE-CODE FALSE> - TAG41>
2514 <SET TEMP24 'T (TYPE ATOM)>
2517 <SET TEMP24 %<> (TYPE FALSE)>
2521 <VEQUAL? FLS19 0 + PHRASE44>
2522 <SET TEMP24 BRANCH12>
2525 <FRAME '
\1aMAKE-TAG>
2526 <CALL '
\1aMAKE-TAG 0 = B2-20>
2531 <NTHUV N9 4 = STACK>
2533 <CALL '
\1aDO-STR-EQ 5>
2534 <VEQUAL? FLS19 0 + TAG49>
2538 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE53>
2539 <EQUAL? W10 'DONT-CARE - PHRASE53>
2540 <FRAME '
\1aGEN-TEMP>
2542 <CALL '
\1aGEN-TEMP 1 = W10>
2544 <FRAME '
\1aMOVE-ARG>
2545 <FRAME '
\1aMOVE-ARG>
2546 <FRAME '
\1aREFERENCE>
2548 <CALL '
\1aREFERENCE 1 = STACK>
2551 <CALL '
\1aMOVE-ARG 2 = STACK>
2554 <CALL '
\1aMOVE-ARG 2 = RW18>
2555 <FRAME '
\1aBRANCH-TAG>
2558 <CALL '
\1aBRANCH-TAG 1>
2559 <FRAME '
\1aLABEL-TAG>
2562 <CALL '
\1aLABEL-TAG 1>
2563 <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE61>
2565 <FRAME '
\1aDEALLOCATE-TEMP>
2567 <CALL '
\1aDEALLOCATE-TEMP 1>
2568 <FRAME '
\1aMOVE-ARG>
2569 <FRAME '
\1aREFERENCE>
2570 <TYPE? SDIR17 <TYPE-CODE FALSE> - TAG65>
2572 <SET TEMP24 'T (TYPE ATOM)>
2575 <SET TEMP24 %<> (TYPE FALSE)>
2579 <CALL '
\1aREFERENCE 1 = STACK>
2581 <CALL '
\1aMOVE-ARG 2>
2586 <NTHUV N9 4 = TEMP24>
2587 <EQUAL? TEMP24 'STRCOMP - PHRASE68>
2589 <FRAME '
\1aDO-STR-EQ>
2599 <CALL '
\1aDO-STR-EQ 6 = TEMP24>
2603 <FRAME '
\1aMAKE-TAG>
2604 <CALL '
\1aMAKE-TAG 0 = BRANCH12>
2605 <FRAME '
\1aDO-STR-EQ>
2613 <NTHUV N9 4 = STACK>
2615 <CALL '
\1aDO-STR-EQ 5>
2616 <EQUAL? W10 'DONT-CARE - PHRASE74>
2617 <FRAME '
\1aGEN-TEMP>
2619 <CALL '
\1aGEN-TEMP 1 = W10>
2621 <FRAME '
\1aMOVE-ARG>
2622 <FRAME '
\1aREFERENCE>
2624 <CALL '
\1aREFERENCE 1 = STACK>
2626 <CALL '
\1aMOVE-ARG 2>
2627 <FRAME '
\1aDEALLOCATE-TEMP>
2629 <CALL '
\1aDEALLOCATE-TEMP 1>
2630 <FRAME '
\1aBRANCH-TAG>
2631 <FRAME '
\1aMAKE-TAG>
2632 <CALL '
\1aMAKE-TAG 0 = B2-20>
2634 <CALL '
\1aBRANCH-TAG 1>
2635 <FRAME '
\1aLABEL-TAG>
2638 <CALL '
\1aLABEL-TAG 1>
2639 <FRAME '
\1aMOVE-ARG>
2640 <FRAME '
\1aREFERENCE>
2642 <CALL '
\1aREFERENCE 1 = STACK>
2644 <CALL '
\1aMOVE-ARG 2>
2645 <FRAME '
\1aLABEL-TAG>
2648 <CALL '
\1aLABEL-TAG 1>
2649 <FRAME '
\1aMOVE-ARG>
2654 <CALL '
\1aMOVE-ARG 2 = TEMP24>
2657 <END
\1a=?-STRING-GEN>
2659 <GFCN
\1aDO-STR-EQ ("VALUE" ANY NODE NODE ANY ANY ANY "OPTIONAL" ANY) N1-6 N2-7 DIR8 BR9 NM10 W11>
2660 <OPT-DISPATCH 5 %<> OPT4 OPT5>
2664 <TEMP TG1-19 D1-14 D2-15 TEMP33 INS18:STRING L1-12:TEMP L2-13:TEMP T1-16:TEMP T2-17:TEMP TEMP106 TEMP110:ATOM TG3-22>
2666 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE25>
2667 <FRAME '
\1aMAKE-TAG>
2668 <CALL '
\1aMAKE-TAG 0 = TG1-19>
2672 <CALL '
\1aGEN 1 = D1-14>
2675 <CALL '
\1aGEN 1 = D2-15>
2676 <EQUAL? NM10 'STRCOMP + PHRASE30>
2677 <EQUAL? NM10 'S=? + PHRASE30>
2679 <NTHUV N1-6 3 = STACK>
2680 <CALL '
\1aISTYPE? 1 = TEMP33>
2681 <VEQUAL? TEMP33 'STRING + PHRASE30>
2683 <FRAME '
\1aGEN-TYPE?>
2686 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE36>
2695 <CALL '
\1aGEN-TYPE? 4>
2698 <EQUAL? NM10 'S=? + PHRASE38>
2699 <EQUAL? NM10 'STRCOMP + PHRASE38>
2701 <NTHUV N2-7 3 = STACK>
2702 <CALL '
\1aISTYPE? 1 = TEMP33>
2703 <VEQUAL? TEMP33 'STRING + PHRASE38>
2705 <FRAME '
\1aGEN-TYPE?>
2708 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE43>
2717 <CALL '
\1aGEN-TYPE? 4>
2719 <EQUAL? NM10 'STRCOMP - PHRASE46>
2720 <FRAME '
\1aFIX-STR-TYP>
2721 <NTHUV N1-6 3 = STACK>
2725 <CALL '
\1aFIX-STR-TYP 2 = D1-14>
2726 <FRAME '
\1aFIX-STR-TYP>
2727 <NTHUV N2-7 3 = STACK>
2730 <CALL '
\1aFIX-STR-TYP 2 = D2-15>
2734 <EQUAL? NM10 'STRCOMP - PHRASE51>
2735 <SET INS18 "STRCOMP" (TYPE STRING)>
2738 <SET INS18 "STRING-EQUAL?" (TYPE STRING)>
2742 <EQUAL? NM10 'STRCOMP - PHRASE54>
2743 <FRAME '
\1aMAKE-TAG>
2744 <CALL '
\1aMAKE-TAG 0 = BR9>
2750 <EQUAL? W11 'DONT-CARE - PHRASE58>
2751 <FRAME '
\1aGEN-TEMP>
2752 <CALL '
\1aGEN-TEMP 0 = W11>
2756 <TYPE? W11 <TYPE-CODE TEMP> - PHRASE60>
2757 <FRAME '
\1aUSE-TEMP>
2759 <CALL '
\1aUSE-TEMP 1>
2771 <PUSH '`STRING-EQUAL?>
2774 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE66>
2775 <SET TEMP33 '+ (TYPE ATOM)>
2778 <SET TEMP33 '- (TYPE ATOM)>
2793 <TYPE? D1-14 <TYPE-CODE STRING> + BOOL72>
2794 <TYPE? D1-14 <TYPE-CODE TEMP> - PHRASE71>
2795 <NTHUV D1-14 2 = TEMP33 (TYPE FIX)>
2796 <GRTR? TEMP33 1 - PHRASE71 (TYPE FIX)>
2799 <FRAME '
\1aMOVE-ARG>
2802 <FRAME '
\1aGEN-TEMP>
2804 <CALL '
\1aGEN-TEMP 1 = STACK>
2805 <CALL '
\1aMOVE-ARG 2 = D1-14>
2807 <TYPE? D2-15 <TYPE-CODE STRING> + BOOL80>
2808 <TYPE? D2-15 <TYPE-CODE TEMP> - PHRASE79>
2809 <NTHUV D2-15 2 = TEMP33 (TYPE FIX)>
2810 <GRTR? TEMP33 1 - PHRASE79 (TYPE FIX)>
2813 <FRAME '
\1aMOVE-ARG>
2816 <FRAME '
\1aGEN-TEMP>
2818 <CALL '
\1aGEN-TEMP 1 = STACK>
2819 <CALL '
\1aMOVE-ARG 2 = D2-15>
2821 <FRAME '
\1aLENGTH-STRING>
2823 <FRAME '
\1aGEN-TEMP>
2824 <CALL '
\1aGEN-TEMP 0 = L1-12>
2826 <CALL '
\1aLENGTH-STRING 2>
2827 <EQUAL? NM10 'STRCOMP - PHRASE89>
2828 <FRAME '
\1aLENGTH-STRING>
2830 <FRAME '
\1aGEN-TEMP>
2832 <CALL '
\1aGEN-TEMP 1 = L2-13>
2834 <CALL '
\1aLENGTH-STRING 2>
2837 <FRAME '
\1aGEN-VAL-==?>
2839 <NTHUV N2-7 1 = TEMP33 (TYPE FIX)>
2840 <VEQUAL? TEMP33 2 - PHRASE95 (TYPE FIX)>
2842 <NTHUV N2-7 4 = TEMP33>
2844 <LENUS TEMP33 = TEMP33 (TYPE FIX)>
2847 <FRAME '
\1aLENGTH-STRING>
2849 <FRAME '
\1aGEN-TEMP>
2851 <CALL '
\1aGEN-TEMP 1 = L2-13>
2853 <CALL '
\1aLENGTH-STRING 2>
2854 <FRAME '
\1aFREE-TEMP>
2857 <CALL '
\1aFREE-TEMP 2>
2863 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE101>
2871 <CALL '
\1aGEN-VAL-==? 4>
2873 <FRAME '
\1aGEN-TEMP>
2874 <CALL '
\1aGEN-TEMP 0 = T1-16>
2875 <FRAME '
\1aGEN-TEMP>
2876 <CALL '
\1aGEN-TEMP 0 = T2-17>
2879 <CONS 'LENGTH () = TEMP33>
2880 <CONS 'VALUE TEMP33 = TEMP33>
2881 <NTHUV D1-14 1 = TEMP106 (TYPE ATOM)>
2882 <CONS TEMP106 TEMP33 = STACK>
2883 <DEAD TEMP106 TEMP33>
2884 <CONS 'LENGTH () = TEMP33>
2885 <CONS 'VALUE TEMP33 = TEMP33>
2886 <NTHUV D2-15 1 = TEMP106 (TYPE ATOM)>
2887 <CONS TEMP106 TEMP33 = STACK>
2888 <DEAD TEMP106 TEMP33>
2889 <CONS 'VALUE () = TEMP33>
2890 <NTHUV L1-12 1 = TEMP106 (TYPE ATOM)>
2891 <CONS TEMP106 TEMP33 = STACK>
2892 <DEAD TEMP106 TEMP33>
2893 <SET TEMP106 4 (TYPE FIX)>
2894 <EQUAL? NM10 'STRCOMP - PHRASE108>
2895 <CONS 'VALUE () = TEMP33>
2896 <NTHUV L2-13 1 = TEMP110 (TYPE ATOM)>
2897 <CONS TEMP110 TEMP33 = TEMP33>
2899 <CONS TEMP33 () = TEMP33>
2902 <SET TEMP33 () (TYPE LIST)>
2904 <LOOP (TEMP33 VALUE) (TEMP106 VALUE)>
2907 <EMPL? TEMP33 + TAG105>
2908 <NTHL TEMP33 1 = STACK>
2909 <RESTL TEMP33 1 = TEMP33 (TYPE LIST)>
2910 <ADD TEMP106 1 = TEMP106 (TYPE FIX)>
2913 <CALL '
\1aIEMIT TEMP106>
2915 <FRAME '
\1aLABEL-TAG>
2916 <FRAME '
\1aMAKE-TAG>
2917 <CALL '
\1aMAKE-TAG 0 = TEMP33>
2919 <CALL '
\1aLABEL-TAG 1>
2920 <FRAME '
\1aNTH-STRING>
2924 <CALL '
\1aNTH-STRING 3>
2925 <FRAME '
\1aNTH-STRING>
2929 <CALL '
\1aNTH-STRING 3>
2930 <FRAME '
\1aGEN-VAL-==?>
2934 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE120>
2935 <SET TEMP106 TG1-19>
2942 <CALL '
\1aGEN-VAL-==? 4>
2943 <EQUAL? NM10 'STRCOMP + PHRASE123>
2944 <FRAME '
\1aFREE-TEMP>
2946 <CALL '
\1aFREE-TEMP 1>
2947 <FRAME '
\1aFREE-TEMP>
2949 <CALL '
\1aFREE-TEMP 1>
2951 <FRAME '
\1aREST-STRING>
2955 <CALL '
\1aREST-STRING 3>
2956 <FRAME '
\1aREST-STRING>
2960 <CALL '
\1aREST-STRING 3>
2961 <EQUAL? NM10 'STRCOMP - PHRASE129>
2976 <FRAME '
\1aMAKE-TAG>
2977 <CALL '
\1aMAKE-TAG 0 = TG3-22>
2999 <EQUAL? NM10 'STRCOMP - PHRASE136>
3001 <EQUAL? W11 'DONT-CARE - PHRASE138>
3002 <FRAME '
\1aGEN-TEMP>
3004 <CALL '
\1aGEN-TEMP 1 = W11>
3006 <FRAME '
\1aMOVE-ARG>
3009 <CALL '
\1aMOVE-ARG 2>
3010 <FRAME '
\1aBRANCH-TAG>
3011 <FRAME '
\1aMAKE-TAG>
3012 <CALL '
\1aMAKE-TAG 0 = TEMP33>
3014 <CALL '
\1aBRANCH-TAG 1>
3015 <FRAME '
\1aLABEL-TAG>
3018 <CALL '
\1aLABEL-TAG 1>
3033 <FRAME '
\1aMAKE-TAG>
3034 <CALL '
\1aMAKE-TAG 0 = TEMP106>
3037 <FRAME '
\1aMOVE-ARG>
3040 <CALL '
\1aMOVE-ARG 2>
3041 <FRAME '
\1aBRANCH-TAG>
3043 <CALL '
\1aBRANCH-TAG 1>
3044 <FRAME '
\1aLABEL-TAG>
3046 <CALL '
\1aLABEL-TAG 1>
3047 <FRAME '
\1aMOVE-ARG>
3050 <CALL '
\1aMOVE-ARG 2>
3051 <FRAME '
\1aBRANCH-TAG>
3053 <CALL '
\1aBRANCH-TAG 1>
3054 <FRAME '
\1aLABEL-TAG>
3056 <CALL '
\1aLABEL-TAG 1>
3065 <FRAME '
\1aFREE-TEMP>
3068 <CALL '
\1aFREE-TEMP 1>
3069 <FRAME '
\1aFREE-TEMP>
3072 <CALL '
\1aFREE-TEMP 1>
3073 <FRAME '
\1aMOVE-ARG>
3076 <CALL '
\1aMOVE-ARG 2>
3077 <FRAME '
\1aLABEL-TAG>
3080 <CALL '
\1aLABEL-TAG 1>
3082 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE159>
3083 <FRAME '
\1aBRANCH-TAG>
3086 <CALL '
\1aBRANCH-TAG 1>
3088 <FRAME '
\1aFREE-TEMP>
3091 <CALL '
\1aFREE-TEMP 1>
3092 <FRAME '
\1aFREE-TEMP>
3095 <CALL '
\1aFREE-TEMP 1>
3101 <TYPE? DIR8 <TYPE-CODE FALSE> + PHRASE165>
3103 <FRAME '
\1aLABEL-TAG>
3106 <CALL '
\1aLABEL-TAG 1>
3108 <TYPE? W11 <TYPE-CODE UNBOUND> - TAG169>
3113 <END
\1aDO-STR-EQ>
\r\r
3115 <GFCN
\1aFIX-STR-TYP ("VALUE" ANY ANY ANY) TYP4 D5>
3118 <TYPE? TYP4 <TYPE-CODE FORM> - PHRASE8>
3120 <TYPE? D5 <TYPE-CODE TEMP> - PHRASE10>
3121 <NTHUV D5 2 = TEMP12 (TYPE FIX)>
3122 <GRTR? TEMP12 1 - PHRASE10 (TYPE FIX)>
3124 <FRAME '
\1aMOVE-ARG>
3127 <FRAME '
\1aGEN-TEMP>
3129 <CALL '
\1aGEN-TEMP 1 = STACK>
3130 <CALL '
\1aMOVE-ARG 2 = D5>
3132 <FRAME '
\1aGEN-TYPE?>
3135 <FRAME '
\1aMAKE-TAG>
3136 <CALL '
\1aMAKE-TAG 0 = TEMP12>
3139 <CALL '
\1aGEN-TYPE? 4>
3147 <FRAME '
\1aLABEL-TAG>
3150 <CALL '
\1aLABEL-TAG 1>
3154 <END
\1aFIX-STR-TYP>
3156 <GFCN
\1aATOM-PART-GEN ("VALUE" ANY NODE ANY) N4 W5>
3157 <TEMP NM7 RW8 TEMP11 CARE9>
3161 <GEN-LVAL 'CAREFUL = TEMP11>
3162 <TYPE? TEMP11 <TYPE-CODE FALSE> + TAG17>
3163 <EQUAL? NM7 'LBIND - TAG15>
3164 <SET TEMP11 'T (TYPE ATOM)>
3167 <EQUAL? NM7 'GBIND - TAG16>
3168 <SET TEMP11 'T (TYPE ATOM)>
3171 <SET TEMP11 %<> (TYPE FALSE)>
3176 <NTHUV N4 5 = TEMP11 (TYPE LIST)>
3177 <NTHL TEMP11 1 = STACK (TYPE NODE)>
3179 <CALL '
\1aGEN 1 = TEMP11>
3180 <FRAME '
\1aFREE-TEMP>
3183 <CALL '
\1aFREE-TEMP 2>
3188 <EQUAL? NM7 'GBIND - PHRASE22>
3189 <SET TEMP11 1 (TYPE FIX)>
3192 <EQUAL? NM7 'LBIND - PHRASE23>
3193 <SET TEMP11 2 (TYPE FIX)>
3196 <EQUAL? NM7 'SPNAME - PHRASE24>
3198 <SET TEMP11 3 (TYPE FIX)>
3201 <SET TEMP11 4 (TYPE FIX)>
3206 <TYPE? W5 <TYPE-CODE TEMP> - PHRASE27>
3207 <FRAME '
\1aUSE-TEMP>
3210 <NTHUV N4 3 = STACK>
3212 <CALL '
\1aISTYPE? 1 = STACK>
3213 <CALL '
\1aUSE-TEMP 2 = TEMP11>
3216 <EQUAL? W5 'DONT-CARE + BOOL31>
3217 <TYPE? CARE9 <TYPE-CODE FALSE> + PHRASE30>
3219 <FRAME '
\1aGEN-TEMP>
3221 <NTHUV N4 3 = STACK>
3223 <CALL '
\1aISTYPE? 1 = NM7>
3224 <TYPE? NM7 <TYPE-CODE FALSE> - BOOL33>
3225 <SET NM7 'T (TYPE ATOM)>
3229 <CALL '
\1aGEN-TEMP 1 = W5>
3237 <PUSH (`RECORD-TYPE ATOM)>
3238 <SET NM7 6 (TYPE FIX)>
3239 <TYPE? CARE9 <TYPE-CODE FALSE> + PHRASE38>
3240 <CONS (`BRANCH-FALSE + `COMPERR) () = TEMP11>
3243 <SET TEMP11 () (TYPE LIST)>
3245 <LOOP (TEMP11 VALUE) (NM7 VALUE)>
3248 <EMPL? TEMP11 + TAG20>
3249 <NTHL TEMP11 1 = STACK>
3250 <RESTL TEMP11 1 = TEMP11 (TYPE LIST)>
3251 <ADD NM7 1 = NM7 (TYPE FIX)>
3254 <CALL '
\1aIEMIT NM7>
3256 <TYPE? CARE9 <TYPE-CODE FALSE> + PHRASE43>
3258 <FRAME '
\1aSPEC-IEMIT>
3261 <PUSH <`TYPE-CODE FALSE>>
3264 <CALL '
\1aSPEC-IEMIT 5>
3266 <FRAME '
\1aMOVE-ARG>
3271 <CALL '
\1aMOVE-ARG 2 = NM7>
3274 <END
\1aATOM-PART-GEN>
3276 <GFCN
\1aOFFSET-PART-GEN ("VALUE" ANY NODE ANY) N4 W5>
3277 <TEMP NM7 K8:LIST RT10 D6>
3280 <NTHUV N4 5 = K8 (TYPE LIST)>
3282 <NTHUV N4 3 = STACK>
3284 <CALL '
\1aISTYPE? 1 = RT10>
3286 <NTHL K8 1 = STACK (TYPE NODE)>
3287 <CALL '
\1aGEN 1 = D6>
3288 <RESTL K8 1 = K8 (TYPE LIST)>
3289 <EMPL? K8 - PHRASE14 (TYPE LIST)>
3290 <FRAME '
\1aFREE-TEMP>
3293 <CALL '
\1aFREE-TEMP 2>
3298 <EQUAL? NM7 'INDEX - PHRASE18>
3300 <SET NM7 1 (TYPE FIX)>
3303 <SET NM7 3 (TYPE FIX)>
3308 <TYPE? W5 <TYPE-CODE TEMP> - PHRASE22>
3309 <FRAME '
\1aUSE-TEMP>
3313 <TYPE? NM7 <TYPE-CODE FALSE> - BOOL24>
3314 <SET NM7 'T (TYPE ATOM)>
3318 <CALL '
\1aUSE-TEMP 2 = NM7>
3321 <EQUAL? W5 'DONT-CARE - PHRASE25>
3322 <FRAME '
\1aGEN-TEMP>
3323 <TYPE? RT10 <TYPE-CODE FALSE> - BOOL27>
3324 <SET RT10 'T (TYPE ATOM)>
3328 <CALL '
\1aGEN-TEMP 1 = W5>
3341 <NTHL K8 1 = STACK (TYPE NODE)>
3343 <CALL '
\1aGEN 1 = NM7>
3350 <FRAME '
\1aFREE-TEMP>
3353 <CALL '
\1aFREE-TEMP 1>
3354 <FRAME '
\1aMOVE-ARG>
3359 <CALL '
\1aMOVE-ARG 2 = W5>
3362 <END
\1aOFFSET-PART-GEN>
3364 <GFCN
\1aPUT-GET-DECL-GEN ("VALUE" ANY NODE ANY) N4 W5>
3365 <TEMP NM8 TEMP12 NN9 ST10>
3368 <NTHUV N4 5 = TEMP12 (TYPE LIST)>
3369 <NTHL TEMP12 1 = NN9 (TYPE NODE)>
3371 <NTHUV NN9 3 = ST10>
3372 <EQUAL? NM8 'GET-DECL - PHRASE14>
3377 <CALL '
\1aGEN 1 = NM8>
3378 <FRAME '
\1aFREE-TEMP>
3381 <CALL '
\1aFREE-TEMP 2>
3382 <EQUAL? W5 'DONT-CARE - PHRASE18>
3383 <FRAME '
\1aGEN-TEMP>
3385 <CALL '
\1aGEN-TEMP 1 = W5>
3388 <TYPE? W5 <TYPE-CODE TEMP> - PHRASE20>
3389 <FRAME '
\1aUSE-TEMP>
3391 <CALL '
\1aUSE-TEMP 1>
3393 <EQUAL? ST10 'OFFSET - PHRASE23>
3412 <CONS '`RECORD-TYPE () = TEMP12>
3416 <CALL '
\1aISTYPE? 1 = NN9>
3418 <PUTREST TEMP12 NN9>
3426 <TYPE? W5 <TYPE-CODE TEMP> - PHRASE31>
3431 <CALL '
\1aGEN 2 = NM8>
3437 <CALL '
\1aGEN 1 = NM8>
3440 <NTHUV N4 5 = NN9 (TYPE LIST)>
3442 <RESTL NN9 1 = NN9 (TYPE LIST)>
3443 <NTHL NN9 1 = STACK (TYPE NODE)>
3445 <CALL '
\1aGEN 1 = TEMP12>
3446 <EQUAL? W5 'FLUSHED - PHRASE37>
3447 <FRAME '
\1aFREE-TEMP>
3450 <CALL '
\1aFREE-TEMP 2>
3452 <FRAME '
\1aFREE-TEMP>
3455 <CALL '
\1aFREE-TEMP 2>
3456 <EQUAL? ST10 'OFFSET - PHRASE41>
3472 <CONS '`RECORD-TYPE () = NN9>
3476 <CALL '
\1aISTYPE? 1 = TEMP12>
3477 <CONS TEMP12 () = TEMP12>
3478 <PUTREST NN9 TEMP12>
3484 <EQUAL? W5 'FLUSHED + PHRASE48>
3485 <FRAME '
\1aMOVE-ARG>
3490 <CALL '
\1aMOVE-ARG 2 = W5>
3494 <END
\1aPUT-GET-DECL-GEN>
3496 <GFCN
\1aSUBSTRUC-GEN ("VALUE" ANY NODE ANY) N4 W5>
3497 <TEMP K6 PT7 LN8 (OVERLAP9 'T) (DIR10 %<>) (RSTN13 %<>) (LNTN14 %<>) STRN15:NODE (RESN16 %<>) (THE-SYM19 %<>) (SRC-REST22:FIX 0) (DEST-REST23:FIX 0) TEMP31 NT18 NN21:NODE>
3499 <NTHUV N4 5 = K6 (TYPE LIST)>
3500 <FRAME '
\1aSTRUCTYP>
3501 <NTHUV N4 3 = STACK>
3502 <CALL '
\1aSTRUCTYP 1 = PT7>
3503 <LENL K6 = LN8 (TYPE FIX)>
3504 <NTHL K6 1 = STRN15 (TYPE NODE)>
3505 <GRTR? LN8 1 - PHRASE35 (TYPE FIX) (DEAD-FALL RSTN13)>
3506 <RESTL K6 1 = TEMP31 (TYPE LIST)>
3507 <NTHL TEMP31 1 = RSTN13 (TYPE NODE)>
3509 <GRTR? LN8 2 - PHRASE35 (TYPE FIX) (DEAD-FALL LNTN14)>
3510 <RESTL K6 1 = TEMP31 (TYPE LIST)>
3511 <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
3512 <NTHL TEMP31 1 = LNTN14 (TYPE NODE)>
3514 <GRTR? LN8 3 - PHRASE35 (TYPE FIX) (DEAD-FALL RESN16)>
3515 <RESTL K6 1 = TEMP31 (TYPE LIST)>
3516 <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
3517 <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
3518 <NTHL TEMP31 1 = RESN16 (TYPE NODE)>
3521 <VEQUAL? RSTN13 0 + PHRASE37>
3522 <NTHUV RSTN13 1 = TEMP31 (TYPE FIX)>
3523 <VEQUAL? TEMP31 2 - PHRASE37 (TYPE FIX)>
3525 <NTHUV RSTN13 4 = TEMP31 (TYPE FIX)>
3526 <ADD TEMP31 SRC-REST22 = SRC-REST22 (TYPE FIX)>
3529 <NTHUV STRN15 1 = NT18 (TYPE FIX)>
3530 <VEQUAL? NT18 10 - BOOL43 (TYPE FIX) (DEAD-FALL THE-SYM19)>
3531 <NTHUV STRN15 4 = THE-SYM19>
3532 <TYPE? THE-SYM19 <TYPE-CODE FALSE> - BOOL42 (DEAD-JUMP NT18)>
3534 <VEQUAL? NT18 28 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4 DEST-REST23)>
3536 <NTHUV STRN15 5 = NT18 (TYPE LIST)>
3537 <RESTL NT18 1 = TEMP31 (TYPE LIST)>
3538 <NTHL TEMP31 1 = NN21 (TYPE NODE)>
3540 <NTHUV NN21 1 = TEMP31 (TYPE FIX)>
3541 <VEQUAL? TEMP31 2 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4 NN21 NT18 DEST-REST23)>
3543 <NTHUV NN21 4 = TEMP31 (TYPE FIX)>
3545 <ADD TEMP31 SRC-REST22 = SRC-REST22 (TYPE FIX)>
3547 <NTHL NT18 1 = NN21 (TYPE NODE)>
3549 <NTHUV NN21 1 = TEMP31 (TYPE FIX)>
3550 <VEQUAL? TEMP31 10 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4 NN21 DEST-REST23) (DEAD-FALL THE-SYM19)>
3552 <NTHUV NN21 4 = THE-SYM19>
3554 <TYPE? THE-SYM19 <TYPE-CODE FALSE> + PHRASE40 (DEAD-JUMP N4 DEST-REST23)>
3556 <VEQUAL? RSTN13 0 + PHRASE40 (DEAD-JUMP N4 DEST-REST23)>
3557 <NTHUV RSTN13 1 = TEMP31 (TYPE FIX)>
3558 <VEQUAL? TEMP31 2 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4 DEST-REST23)>
3560 <VEQUAL? LNTN14 0 + PHRASE40 (DEAD-JUMP N4 DEST-REST23)>
3561 <LENUV LNTN14 = TEMP31 (TYPE FIX)>
3562 <LESS? TEMP31 8 + BOOL45 (TYPE FIX)>
3564 <NTHUV LNTN14 8 = TEMP31>
3565 <TYPE? TEMP31 <TYPE-CODE FALSE> - PHRASE40 (DEAD-JUMP N4 DEST-REST23)>
3568 <VEQUAL? RESN16 0 + PHRASE40 (DEAD-JUMP N4 DEST-REST23)>
3569 <NTHUV RESN16 1 = NT18 (TYPE FIX)>
3570 <VEQUAL? NT18 10 - BOOL47 (TYPE FIX) (DEAD-JUMP DEST-REST23)>
3571 <NTHUV RESN16 4 = TEMP31>
3572 <EQUAL? TEMP31 THE-SYM19 + BOOL46 (DEAD-JUMP NT18 LN8) (DEAD-FALL DEST-REST23)>
3575 <VEQUAL? NT18 28 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4)>
3577 <NTHUV RESN16 5 = NT18 (TYPE LIST)>
3578 <RESTL NT18 1 = TEMP31 (TYPE LIST)>
3579 <NTHL TEMP31 1 = NN21 (TYPE NODE)>
3581 <NTHUV NN21 1 = TEMP31 (TYPE FIX)>
3582 <VEQUAL? TEMP31 2 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4 NN21 NT18)>
3584 <NTHUV NN21 4 = DEST-REST23 (TYPE FIX)>
3586 <NTHL NT18 1 = NN21 (TYPE NODE)>
3588 <NTHUV NN21 1 = TEMP31 (TYPE FIX)>
3589 <VEQUAL? TEMP31 10 - PHRASE40 (TYPE FIX) (DEAD-JUMP N4 NN21 DEST-REST23)>
3591 <NTHUV NN21 4 = TEMP31>
3593 <EQUAL? TEMP31 THE-SYM19 - PHRASE40 (DEAD-JUMP N4 DEST-REST23) (DEAD-FALL LN8)>
3596 <GRTR? SRC-REST22 DEST-REST23 + PEEP154 (TYPE FIX) (DEAD-JUMP N4 DEST-REST23 DIR10)>
3597 <LESS? SRC-REST22 DEST-REST23 - PHRASE51 (TYPE FIX) (DEAD-FALL N4 DIR10)>
3599 <SET DIR10 '`BACKWARD (TYPE ATOM)>
3602 <FRAME '
\1aCOMPILE-ERROR>
3603 <PUSH "Bogus SUBSTRUC turkey">
3606 <CALL '
\1aCOMPILE-ERROR 2>
3609 <VEQUAL? LN8 4 + PHRASE54 (TYPE FIX) (DEAD-FALL DIR10 OVERLAP9)>
3611 <SET OVERLAP9 %<> (TYPE FALSE)>
3613 <SET DIR10 '`FORWARD (TYPE ATOM)>
3615 <TYPE? THE-SYM19 <TYPE-CODE FALSE> + PHRASE56 (DEAD-JUMP THE-SYM19 K6)>
3616 <RESTL K6 1 = TEMP31 (TYPE LIST)>
3621 <EMPL? TEMP31 + MAPAP62 (DEAD-JUMP TEMP31 STRN15)>
3622 <NTHL TEMP31 1 = NN21>
3623 <FRAME '
\1aINTERFERE?>
3624 <NTHUV THE-SYM19 10 = STACK (TYPE TEMP)>
3627 <CALL '
\1aINTERFERE? 2 = K6>
3628 <TYPE? K6 <TYPE-CODE FALSE> - PHRASE56 (DEAD-JUMP TEMP31 THE-SYM19)>
3630 <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
3633 <FRAME '
\1aUSE-TEMP>
3634 <NTHUV THE-SYM19 10 = THE-SYM19>
3636 <CALL '
\1aUSE-TEMP 1>
3642 <FRAME '
\1aGEN-TEMP>
3644 <CALL '
\1aGEN-TEMP 1 = STACK>
3645 <CALL '
\1aGEN 2 = THE-SYM19>
3647 <EQUAL? PT7 'VECTOR - PHRASE79>
3648 <SET K6 '`RESTUV (TYPE ATOM)>
3649 <SET LN8 '`LENUV (TYPE ATOM)>
3652 <EQUAL? PT7 'UVECTOR - PHRASE80>
3653 <SET K6 '`RESTUU (TYPE ATOM)>
3654 <SET LN8 '`LENUU (TYPE ATOM)>
3657 <EQUAL? PT7 'STRING - PHRASE81>
3658 <SET K6 '`RESTUS (TYPE ATOM)>
3659 <SET LN8 '`LENUS (TYPE ATOM)>
3662 <SET K6 '`RESTUB (TYPE ATOM)>
3663 <SET LN8 '`LENUB (TYPE ATOM)>
3665 <TYPE? RSTN13 <TYPE-CODE FALSE> + PHRASE84>
3666 <NTHUV RSTN13 1 = TEMP31 (TYPE FIX)>
3667 <VEQUAL? TEMP31 2 + PHRASE84 (TYPE FIX) (DEAD-FALL SRC-REST22)>
3672 <CALL '
\1aGEN 1 = RSTN13>
3679 <NTHUV THE-SYM19 2 = TEMP31 (TYPE FIX)>
3680 <GRTR? TEMP31 1 - PEEP153 (TYPE FIX)>
3682 <FRAME '
\1aFREE-TEMP>
3685 <CALL '
\1aFREE-TEMP 1>
3686 <FRAME '
\1aGEN-TEMP>
3688 <CALL '
\1aGEN-TEMP 1 = THE-SYM19>
3690 <SET TEMP31 THE-SYM19>
3694 <FRAME '
\1aFREE-TEMP>
3697 <CALL '
\1aFREE-TEMP 1>
3700 <TYPE? RSTN13 <TYPE-CODE FALSE> + PHRASE96 (DEAD-JUMP SRC-REST22 K6)>
3702 <VEQUAL? SRC-REST22 0 + PHRASE96 (TYPE FIX) (DEAD-JUMP SRC-REST22 K6)>
3710 <NTHUV THE-SYM19 2 = RSTN13 (TYPE FIX)>
3711 <GRTR? RSTN13 1 - PEEP152 (TYPE FIX)>
3713 <FRAME '
\1aFREE-TEMP>
3716 <CALL '
\1aFREE-TEMP 1>
3717 <FRAME '
\1aGEN-TEMP>
3719 <CALL '
\1aGEN-TEMP 1 = THE-SYM19>
3721 <SET RSTN13 THE-SYM19>
3726 <TYPE? LNTN14 <TYPE-CODE FALSE> + PHRASE109 (DEAD-JUMP LNTN14) (DEAD-FALL LN8)>
3730 <CALL '
\1aGEN 1 = LNTN14>
3738 <FRAME '
\1aGEN-TEMP>
3740 <CALL '
\1aGEN-TEMP 1 = LNTN14>
3744 <TYPE? RESN16 <TYPE-CODE FALSE> + PHRASE115 (DEAD-JUMP RESN16)>
3748 <TYPE? W5 <TYPE-CODE TEMP> - PHRASE118>
3749 <EQUAL? W5 THE-SYM19 + PHRASE118>
3753 <SET RSTN13 'DONT-CARE (TYPE ATOM)>
3757 <CALL '
\1aGEN 2 = RSTN13>
3758 <EQUAL? PT7 'VECTOR + BOOL140 (DEAD-JUMP OVERLAP9)>
3759 <EQUAL? PT7 'UVECTOR + BOOL140 (DEAD-JUMP OVERLAP9) (DEAD-FALL DIR10 PT7)>
3767 <CALL '
\1aFORM 2 = STACK>
3770 <TYPE? W5 <TYPE-CODE TEMP> - PHRASE133>
3771 <EQUAL? W5 THE-SYM19 + PHRASE133>
3772 <FRAME '
\1aUSE-TEMP>
3774 <CALL '
\1aUSE-TEMP 1>
3778 <FRAME '
\1aGEN-TEMP>
3780 <CALL '
\1aGEN-TEMP 1 = RSTN13>
3785 <CONS PT7 () = TEMP31>
3786 <CONS '`TYPE TEMP31 = STACK>
3789 <EQUAL? PT7 'VECTOR + BOOL140 (DEAD-JUMP OVERLAP9)>
3790 <EQUAL? PT7 'UVECTOR - PHRASE139 (DEAD-JUMP DIR10 PT7) (DEAD-FALL OVERLAP9)>
3797 <CONS PT7 () = TEMP31>
3799 <CONS '`TYPE TEMP31 = STACK>
3801 <CONS DIR10 () = TEMP31>
3803 <CONS '`DIRECTION TEMP31 = STACK>
3809 <PUSH '`MOVE-STRING>
3813 <VEQUAL? OVERLAP9 0 - TAG144>
3815 <SET TEMP31 'T (TYPE ATOM)>
3818 <SET TEMP31 %<> (TYPE FALSE)>
3820 <CONS TEMP31 () = TEMP31>
3821 <CONS '`NO-OVERLAP TEMP31 = STACK>
3825 <FRAME '
\1aFREE-TEMP>
3828 <CALL '
\1aFREE-TEMP 1>
3829 <FRAME '
\1aFREE-TEMP>
3832 <CALL '
\1aFREE-TEMP 1>
3833 <FRAME '
\1aMOVE-ARG>
3838 <CALL '
\1aMOVE-ARG 2 = TEMP31>
3841 <END
\1aSUBSTRUC-GEN>