Machine-Independent MDL for TOPS-20 and VAX.
[pdp10-muddle.git] / mim / development / mim / mimc / mmqgen.mima
1
2 <PACKAGE "MMQGEN">
3
4 <ENTRY MEMQ-GEN>
5
6 <USE "COMPDEC" "CODGEN" "CHKDCL" "MIMGEN" "ADVMESS" "STRGEN">
7
8 #WORD *12135077426*
9                     <GFCN \1aMEMQ-GEN ("VALUE" ANY NODE ANY "OPTIONAL" <OR FALSE ATOM> <OR FALSE ATOM> <OR FALSE ATOM> ANY) N9 W10 NOTF11 BRANCH12 DIR13 SETF14>
10                     <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
11 OPT4
12                     <PUSH %<>>
13 OPT5
14                     <PUSH %<>>
15 OPT6
16                     <PUSH %<>>
17 OPT7
18                     <PUSH %<>>
19 OPT8
20                     <TEMP TEMP37 STR15 THING16 TYP17 TPS18 FLS19 SDIR20 TTYP21 TYPTMP22 ETY24 TWIN25 B226 B331:ATOM RW32 FC33 LP34 NXT-TAG36 TEM29 TEMP71 TEMP72 TY30>
21                     <INTGO>
22                     <NTHUV N9 5 = TEMP37 (TYPE LIST)>
23                     <RESTL TEMP37 1 = TEMP37 (TYPE LIST)>
24                     <NTHL TEMP37 1 = STR15 (TYPE NODE)>
25                     <DEAD TEMP37>
26                     <NTHUV N9 5 = TEMP37 (TYPE LIST)>
27                     <NTHL TEMP37 1 = THING16 (TYPE NODE)>
28                     <DEAD TEMP37>
29                     <NTHUV STR15 3 = TYP17>
30                     <FRAME '\1aSTRUCTYP>
31                     <PUSH TYP17>
32                     <CALL '\1aSTRUCTYP 1 = TPS18>
33                     <EQUAL? W10 'FLUSHED - TAG39>
34                     <SET FLS19 'T (TYPE ATOM)>
35                     <JUMP + TAG40>
36 TAG39
37                     <SET FLS19 %<> (TYPE FALSE)>
38 TAG40
39                     <SET SDIR20 DIR13>
40                     <NTHUV THING16 3 = TTYP21>
41                     <FRAME '\1aGET-ELE-TYPE>
42                     <PUSH TYP17>
43                     <PUSH 'ALL>
44                     <CALL '\1aGET-ELE-TYPE 2 = ETY24>
45                     <FRAME '\1aTYPESAME>
46                     <PUSH ETY24>
47                     <PUSH TTYP21>
48                     <CALL '\1aTYPESAME 2 = TWIN25>
49                     <VEQUAL? FLS19 0 + PHRASE44>
50                     <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE44>
51                     <SET TEMP37 BRANCH12>
52                     <JUMP + PHRASE46>
53 PHRASE44
54                     <FRAME '\1aMAKE-TAG>
55                     <CALL '\1aMAKE-TAG 0 = TEMP37>
56 PHRASE46
57                     <SET B226 TEMP37>
58                     <DEAD TEMP37>
59                     <FRAME '\1aMAKE-TAG>
60                     <CALL '\1aMAKE-TAG 0 = B331>
61                     <SET RW32 W10>
62                     <FRAME '\1aMINL>
63                     <PUSH TYP17>
64                     <CALL '\1aMINL 1 = TEMP37>
65                     <VEQUAL? TEMP37 0 - TAG50 (TYPE FIX)>
66                     <DEAD TEMP37>
67                     <SET FC33 'T (TYPE ATOM)>
68                     <JUMP + TAG53>
69 TAG50
70                     <SET FC33 %<> (TYPE FALSE)>
71 TAG53
72                     <FRAME '\1aMAKE-TAG>
73                     <CALL '\1aMAKE-TAG 0 = LP34>
74                     <FRAME '\1aMAKE-TAG>
75                     <CALL '\1aMAKE-TAG 0 = NXT-TAG36>
76                     <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG58>
77                     <TYPE? DIR13 <TYPE-CODE FALSE> - TAG57>
78                     <DEAD DIR13>
79                     <SET DIR13 'T (TYPE ATOM)>
80                     <JUMP + TAG58>
81 TAG57
82                     <SET DIR13 %<> (TYPE FALSE)>
83 TAG58
84                     <TYPE? W10 <TYPE-CODE TEMP> - PHRASE60>
85                     <NTHUV W10 2 = TEMP37 (TYPE FIX)>
86                     <GRTR? TEMP37 0 + PHRASE60 (TYPE FIX)>
87                     <DEAD TEMP37>
88                     <SET TEM29 W10>
89                     <JUMP + PHRASE64>
90 PHRASE60
91                     <SET TEM29 'DONT-CARE (TYPE ATOM)>
92 PHRASE64
93                     <NTHUV N9 8 = TEMP37>
94                     <DEAD N9>
95                     <TYPE? TEMP37 <TYPE-CODE FALSE> - PHRASE66>
96                     <DEAD TEMP37>
97                     <NTHUV STR15 1 = TEMP37 (TYPE FIX)>
98                     <GVAL 'SNODES = TEMP71>
99                     <EMPUU? TEMP71 + TAG68>
100                     <LOOP (TEMP37 VALUE) (TEMP71 LENGTH VALUE)>
101 TAG69
102                     <NTHUU TEMP71 1 = TEMP72>
103                     <VEQUAL? TEMP72 TEMP37 + PHRASE66>
104                     <DEAD TEMP72>
105                     <RESTUU TEMP71 1 = TEMP71 (TYPE UVECTOR)>
106                     <EMPUU? TEMP71 - TAG69>
107 TAG68
108                     <NTHUV THING16 1 = TEMP71 (TYPE FIX)>
109                     <GVAL 'SNODES = TEMP37>
110                     <EMPUU? TEMP37 + PHRASE66>
111                     <LOOP (TEMP71 VALUE) (TEMP37 LENGTH VALUE)>
112 TAG74
113                     <NTHUU TEMP37 1 = TEMP72>
114                     <VEQUAL? TEMP72 TEMP71 + TAG73>
115                     <DEAD TEMP72>
116                     <RESTUU TEMP37 1 = TEMP37 (TYPE UVECTOR)>
117                     <EMPUU? TEMP37 - TAG74>
118                     <JUMP + PHRASE66>
119 TAG73
120                     <FRAME '\1aGEN>
121                     <PUSH STR15>
122                     <DEAD STR15>
123                     <PUSH TEM29>
124                     <DEAD TEM29>
125                     <CALL '\1aGEN 2 = TEM29>
126                     <FRAME '\1aGEN>
127                     <PUSH THING16>
128                     <DEAD THING16>
129                     <PUSH 'DONT-CARE>
130                     <CALL '\1aGEN 2 = THING16>
131                     <JUMP + PHRASE78>
132 PHRASE66
133                     <FRAME '\1aGEN>
134                     <PUSH THING16>
135                     <DEAD THING16>
136                     <PUSH 'DONT-CARE>
137                     <CALL '\1aGEN 2 = THING16>
138                     <FRAME '\1aINTERF-CHANGE>
139                     <PUSH THING16>
140                     <DEAD THING16>
141                     <PUSH STR15>
142                     <CALL '\1aINTERF-CHANGE 2 = THING16>
143                     <FRAME '\1aGEN>
144                     <PUSH STR15>
145                     <DEAD STR15>
146                     <PUSH TEM29>
147                     <DEAD TEM29>
148                     <CALL '\1aGEN 2 = TEM29>
149 PHRASE78
150                     <TYPE? TEM29 <TYPE-CODE TEMP> - BOOL84>
151                     <NTHUV TEM29 2 = TEMP37 (TYPE FIX)>
152                     <GRTR? TEMP37 1 - PHRASE83 (TYPE FIX)>
153                     <DEAD TEMP37>
154 BOOL84
155                     <VEQUAL? FLS19 0 - PHRASE88>
156                     <TYPE? NOTF11 <TYPE-CODE FALSE> - PHRASE88>
157                     <TYPE? TPS18 <TYPE-CODE FALSE> + PHRASE88>
158                     <FRAME '\1aISTYPE?>
159                     <PUSH TYP17>
160                     <DEAD TYP17>
161                     <CALL '\1aISTYPE? 1 = TEMP37>
162                     <VEQUAL? TPS18 TEMP37 + PHRASE88>
163                     <DEAD TEMP37>
164                     <FRAME '\1aFREE-TEMP>
165                     <PUSH TEM29>
166                     <PUSH %<>>
167                     <CALL '\1aFREE-TEMP 2>
168                     <FRAME '\1aIEMIT>
169                     <PUSH '`CHTYPE>
170                     <PUSH TEM29>
171                     <DEAD TEM29>
172                     <FRAME '\1aFORM>
173                     <PUSH '`TYPE-CODE>
174                     <PUSH TPS18>
175                     <CALL '\1aFORM 2 = STACK>
176                     <PUSH '=>
177                     <FRAME '\1aGEN-TEMP>
178                     <PUSH TPS18>
179                     <CALL '\1aGEN-TEMP 1 = TEM29>
180                     <PUSH TEM29>
181                     <CALL '\1aIEMIT 5>
182                     <JUMP + PHRASE98>
183 PHRASE88
184                     <FRAME '\1aMOVE-ARG>
185                     <PUSH TEM29>
186                     <DEAD TEM29>
187                     <FRAME '\1aGEN-TEMP>
188                     <PUSH %<>>
189                     <CALL '\1aGEN-TEMP 1 = STACK>
190                     <CALL '\1aMOVE-ARG 2 = TEM29>
191                     <JUMP + PHRASE98>
192 PHRASE83
193                     <VEQUAL? FLS19 0 - PHRASE98>
194                     <TYPE? NOTF11 <TYPE-CODE FALSE> - PHRASE98>
195                     <TYPE? TPS18 <TYPE-CODE FALSE> + PHRASE98>
196                     <FRAME '\1aISTYPE?>
197                     <PUSH TYP17>
198                     <DEAD TYP17>
199                     <CALL '\1aISTYPE? 1 = TEMP37>
200                     <VEQUAL? TPS18 TEMP37 + PHRASE98>
201                     <DEAD TEMP37>
202                     <FRAME '\1aIEMIT>
203                     <PUSH '`CHTYPE>
204                     <PUSH TEM29>
205                     <FRAME '\1aFORM>
206                     <PUSH '`TYPE-CODE>
207                     <PUSH TPS18>
208                     <CALL '\1aFORM 2 = STACK>
209                     <PUSH '=>
210                     <PUSH TEM29>
211                     <CALL '\1aIEMIT 5>
212 PHRASE98
213                     <TYPE? TWIN25 <TYPE-CODE FALSE> - PHRASE104>
214                     <FRAME '\1aISTYPE?>
215                     <PUSH ETY24>
216                     <DEAD ETY24>
217                     <CALL '\1aISTYPE? 1 = TY30>
218                     <TYPE? TY30 <TYPE-CODE FALSE> + PHRASE104>
219                     <FRAME '\1aGEN-TYPE?>
220                     <PUSH THING16>
221                     <PUSH TY30>
222                     <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE109>
223                     <SET TEMP37 B331>
224                     <JUMP + PHRASE110>
225 PHRASE109
226                     <SET TEMP37 B226>
227 PHRASE110
228                     <PUSH TEMP37>
229                     <DEAD TEMP37>
230                     <PUSH %<>>
231                     <CALL '\1aGEN-TYPE? 4>
232                     <SET TWIN25 'T (TYPE ATOM)>
233 PHRASE104
234                     <FRAME '\1aISTYPE?>
235                     <PUSH TTYP21>
236                     <DEAD TTYP21>
237                     <CALL '\1aISTYPE? 1 = TTYP21>
238                     <TYPE? TTYP21 <TYPE-CODE FALSE> - PHRASE112>
239                     <TYPE? TY30 <TYPE-CODE FALSE> - PHRASE112>
240                     <DEAD TY30>
241                     <FRAME '\1aIEMIT>
242                     <PUSH '`TYPE>
243                     <PUSH THING16>
244                     <PUSH '=>
245                     <FRAME '\1aGEN-TEMP>
246                     <CALL '\1aGEN-TEMP 0 = TYPTMP22>
247                     <PUSH TYPTMP22>
248                     <CALL '\1aIEMIT 4>
249 PHRASE112
250                     <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE118>
251                     <VEQUAL? FLS19 0 - PHRASE118>
252                     <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE118>
253                     <TYPE? NOTF11 <TYPE-CODE FALSE> - PHRASE118>
254                     <FRAME '\1a=?>
255                     <PUSH W10>
256                     <PUSH TEM29>
257                     <CALL '\1a=? 2 = TEMP37>
258                     <VEQUAL? TEMP37 0 + PHRASE118>
259                     <DEAD TEMP37>
260                     <TYPE? SETF14 <TYPE-CODE FALSE> - PHRASE118>
261                     <SET B226 BRANCH12>
262 PHRASE118
263                     <VEQUAL? FC33 0 + PHRASE129>
264                     <DEAD FC33>
265                     <TYPE? TPS18 <TYPE-CODE FALSE> + PHRASE124>
266                     <FRAME '\1aEMPTY-CHECK>
267                     <PUSH TPS18>
268                     <PUSH TEM29>
269                     <PUSH TPS18>
270                     <PUSH 'T>
271                     <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE127>
272                     <SET TEMP37 B331>
273                     <JUMP + PHRASE128>
274 PHRASE127
275                     <SET TEMP37 B226>
276 PHRASE128
277                     <PUSH TEMP37>
278                     <DEAD TEMP37>
279                     <CALL '\1aEMPTY-CHECK 5>
280                     <JUMP + PHRASE129>
281 PHRASE124
282                     <FRAME '\1aIEMIT>
283                     <PUSH '`EMPTY?>
284                     <PUSH TEM29>
285                     <PUSH '+>
286                     <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE132>
287                     <SET TEMP37 B331>
288                     <JUMP + PHRASE133>
289 PHRASE132
290                     <SET TEMP37 B226>
291 PHRASE133
292                     <PUSH TEMP37>
293                     <DEAD TEMP37>
294                     <CALL '\1aIEMIT 4>
295 PHRASE129
296                     <FRAME '\1aIEMIT>
297                     <PUSH '`LOOP>
298                     <SET TEMP71 2 (TYPE FIX)>
299                     <TYPE? THING16 <TYPE-CODE TEMP> - PHRASE136>
300                     <TYPE? TYPTMP22 <TYPE-CODE UNBOUND> + PHRASE138>
301                     <CONS 'VALUE () = TEMP72>
302                     <NTHUV TYPTMP22 1 = STR15 (TYPE ATOM)>
303                     <CONS STR15 TEMP72 = TEMP72>
304                     <DEAD STR15>
305                     <CONS TEMP72 () = TEMP37>
306                     <DEAD TEMP72>
307                     <CONS 'VALUE () = TEMP72>
308                     <NTHUV THING16 1 = STR15 (TYPE ATOM)>
309                     <CONS STR15 TEMP72 = TEMP72>
310                     <DEAD STR15>
311                     <CONS TEMP72 TEMP37 = TEMP37>
312                     <DEAD TEMP72>
313                     <JUMP + PHRASE142>
314 PHRASE138
315                     <CONS 'VALUE () = TEMP72>
316                     <NTHUV THING16 1 = STR15 (TYPE ATOM)>
317                     <CONS STR15 TEMP72 = TEMP72>
318                     <DEAD STR15>
319                     <CONS TEMP72 () = TEMP37>
320                     <DEAD TEMP72>
321                     <JUMP + PHRASE142>
322 PHRASE136
323                     <TYPE? TYPTMP22 <TYPE-CODE UNBOUND> + PHRASE141>
324                     <CONS 'VALUE () = TEMP72>
325                     <NTHUV TYPTMP22 1 = STR15 (TYPE ATOM)>
326                     <CONS STR15 TEMP72 = TEMP72>
327                     <DEAD STR15>
328                     <CONS TEMP72 () = TEMP37>
329                     <DEAD TEMP72>
330                     <JUMP + PHRASE142>
331 PHRASE141
332                     <SET TEMP37 () (TYPE LIST)>
333 PHRASE142
334                     <LOOP (TEMP37 VALUE) (TEMP71 VALUE)>
335 TAG143
336                     <INTGO>
337                     <EMPL? TEMP37 + TAG134>
338                     <NTHL TEMP37 1 = STACK>
339                     <RESTL TEMP37 1 = TEMP37 (TYPE LIST)>
340                     <ADD TEMP71 1 = TEMP71 (TYPE FIX)>
341                     <JUMP + TAG143>
342 TAG134
343                     <TYPE? TPS18 <TYPE-CODE FALSE> - PHRASE146>
344                     <CONS 'TYPE () = TEMP72>
345                     <CONS 'VALUE TEMP72 = TEMP72>
346                     <CONS 'LENGTH TEMP72 = TEMP72>
347                     <NTHUV TEM29 1 = STR15 (TYPE ATOM)>
348                     <CONS STR15 TEMP72 = TEMP72>
349                     <DEAD STR15>
350                     <JUMP + PHRASE148>
351 PHRASE146
352                     <VEQUAL? TPS18 'LIST - PHRASE147>
353                     <CONS 'VALUE () = TEMP72>
354                     <NTHUV TEM29 1 = STR15 (TYPE ATOM)>
355                     <CONS STR15 TEMP72 = TEMP72>
356                     <DEAD STR15>
357                     <JUMP + PHRASE148>
358 PHRASE147
359                     <CONS 'VALUE () = TEMP72>
360                     <CONS 'LENGTH TEMP72 = TEMP72>
361                     <NTHUV TEM29 1 = STR15 (TYPE ATOM)>
362                     <CONS STR15 TEMP72 = TEMP72>
363                     <DEAD STR15>
364 PHRASE148
365                     <PUSH TEMP72>
366                     <DEAD TEMP72>
367                     <CALL '\1aIEMIT TEMP71>
368                     <DEAD TEMP71>
369                     <FRAME '\1aLABEL-TAG>
370                     <PUSH LP34>
371                     <CALL '\1aLABEL-TAG 1>
372                     <TYPE? TPS18 <TYPE-CODE FALSE> + PHRASE151>
373                     <FRAME '\1aNTH-DO>
374                     <PUSH TPS18>
375                     <PUSH TEM29>
376                     <FRAME '\1aGEN-TEMP>
377                     <CALL '\1aGEN-TEMP 0 = TEMP37>
378                     <PUSH TEMP37>
379                     <PUSH 1>
380                     <CALL '\1aNTH-DO 4>
381                     <JUMP + PHRASE154>
382 PHRASE151
383                     <FRAME '\1aIEMIT>
384                     <PUSH '`NTH1>
385                     <PUSH TEM29>
386                     <PUSH '=>
387                     <FRAME '\1aGEN-TEMP>
388                     <CALL '\1aGEN-TEMP 0 = TEMP37>
389                     <PUSH TEMP37>
390                     <CALL '\1aIEMIT 4>
391 PHRASE154
392                     <TYPE? TYPTMP22 <TYPE-CODE UNBOUND> + PHRASE158>
393                     <FRAME '\1aGEN-TYPE?>
394                     <PUSH TEMP37>
395                     <PUSH TYPTMP22>
396                     <PUSH NXT-TAG36>
397                     <PUSH %<>>
398                     <CALL '\1aGEN-TYPE? 4>
399                     <JUMP + PHRASE160>
400 PHRASE158
401                     <TYPE? TWIN25 <TYPE-CODE FALSE> - PHRASE160>
402                     <DEAD TWIN25>
403                     <FRAME '\1aGEN-TYPE?>
404                     <PUSH TEMP37>
405                     <PUSH TTYP21>
406                     <DEAD TTYP21>
407                     <PUSH NXT-TAG36>
408                     <PUSH %<>>
409                     <CALL '\1aGEN-TYPE? 4>
410 PHRASE160
411                     <FRAME '\1aIEMIT>
412                     <PUSH '`VEQUAL?>
413                     <PUSH TEMP37>
414                     <FRAME '\1aATOMCHK>
415                     <PUSH THING16>
416                     <CALL '\1aATOMCHK 1 = STACK>
417                     <PUSH '+>
418                     <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE165>
419                     <SET TEMP71 B226>
420                     <JUMP + PHRASE166>
421 PHRASE165
422                     <SET TEMP71 B331>
423 PHRASE166
424                     <PUSH TEMP71>
425                     <DEAD TEMP71>
426                     <CALL '\1aIEMIT 5>
427                     <FRAME '\1aFREE-TEMP>
428                     <PUSH TEMP37>
429                     <DEAD TEMP37>
430                     <CALL '\1aFREE-TEMP 1>
431                     <FRAME '\1aLABEL-TAG>
432                     <PUSH NXT-TAG36>
433                     <DEAD NXT-TAG36>
434                     <CALL '\1aLABEL-TAG 1>
435                     <TYPE? TPS18 <TYPE-CODE FALSE> + PHRASE170>
436                     <FRAME '\1aREST-DO>
437                     <PUSH TPS18>
438                     <PUSH TEM29>
439                     <PUSH TEM29>
440                     <PUSH 1>
441                     <CALL '\1aREST-DO 4>
442                     <JUMP + PHRASE172>
443 PHRASE170
444                     <FRAME '\1aIEMIT>
445                     <PUSH '`REST1>
446                     <PUSH TEM29>
447                     <PUSH '=>
448                     <PUSH TEM29>
449                     <CALL '\1aIEMIT 4>
450 PHRASE172
451                     <TYPE? TPS18 <TYPE-CODE FALSE> + PHRASE175>
452                     <FRAME '\1aEMPTY-CHECK>
453                     <PUSH TPS18>
454                     <PUSH TEM29>
455                     <PUSH TPS18>
456                     <DEAD TPS18>
457                     <PUSH %<>>
458                     <PUSH LP34>
459                     <DEAD LP34>
460                     <CALL '\1aEMPTY-CHECK 5>
461                     <JUMP + PHRASE177>
462 PHRASE175
463                     <FRAME '\1aIEMIT>
464                     <PUSH '`EMPTY?>
465                     <PUSH TEM29>
466                     <PUSH '->
467                     <PUSH LP34>
468                     <DEAD LP34>
469                     <CALL '\1aIEMIT 4>
470 PHRASE177
471                     <FRAME '\1aFREE-TEMP>
472                     <PUSH THING16>
473                     <DEAD THING16>
474                     <CALL '\1aFREE-TEMP 1>
475                     <TYPE? TYPTMP22 <TYPE-CODE UNBOUND> + PHRASE181>
476                     <FRAME '\1aFREE-TEMP>
477                     <PUSH TYPTMP22>
478                     <DEAD TYPTMP22>
479                     <CALL '\1aFREE-TEMP 1>
480 PHRASE181
481                     <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE184>
482                     <VEQUAL? FLS19 0 + PHRASE184>
483                     <DEAD FLS19>
484                     <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE187>
485                     <DEAD DIR13>
486                     <FRAME '\1aBRANCH-TAG>
487                     <PUSH B226>
488                     <DEAD B226>
489                     <CALL '\1aBRANCH-TAG 1>
490                     <FRAME '\1aLABEL-TAG>
491                     <PUSH B331>
492                     <DEAD B331>
493                     <CALL '\1aLABEL-TAG 1>
494                     <JUMP + PHRASE190>
495 PHRASE187
496                     <FRAME '\1aLABEL-TAG>
497                     <PUSH B331>
498                     <DEAD B331>
499                     <CALL '\1aLABEL-TAG 1>
500 PHRASE190
501                     <FRAME '\1aFREE-TEMP>
502                     <PUSH TEM29>
503                     <DEAD TEM29>
504                     <CALL '\1aFREE-TEMP 1>
505                     <JUMP + PHRASE264>
506 PHRASE184
507                     <TYPE? NOTF11 <TYPE-CODE FALSE> - BOOL194>
508                     <TYPE? SETF14 <TYPE-CODE FALSE> - PHRASE193>
509                     <TYPE? BRANCH12 <TYPE-CODE FALSE> - TAG196>
510                     <SET TEMP71 'T (TYPE ATOM)>
511                     <JUMP + TAG197>
512 TAG196
513                     <SET TEMP71 %<> (TYPE FALSE)>
514 TAG197
515                     <TYPE? DIR13 <TYPE-CODE FALSE> - TAG198>
516                     <SET TEMP37 'T (TYPE ATOM)>
517                     <JUMP + TAG199>
518 TAG198
519                     <SET TEMP37 %<> (TYPE FALSE)>
520 TAG199
521                     <VEQUAL? TEMP71 TEMP37 + PHRASE193>
522                     <DEAD TEMP71 TEMP37>
523 BOOL194
524                     <EQUAL? TEM29 W10 - PHRASE201>
525                     <FRAME '\1aDEALLOCATE-TEMP>
526                     <PUSH TEM29>
527                     <DEAD TEM29>
528                     <CALL '\1aDEALLOCATE-TEMP 1>
529                     <JUMP + PHRASE203>
530 PHRASE201
531                     <FRAME '\1aFREE-TEMP>
532                     <PUSH TEM29>
533                     <DEAD TEM29>
534                     <CALL '\1aFREE-TEMP 1>
535 PHRASE203
536                     <TYPE? NOTF11 <TYPE-CODE FALSE> + PHRASE206>
537                     <DEAD NOTF11>
538                     <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE206>
539                     <DEAD DIR13>
540                     <FRAME '\1aBRANCH-TAG>
541                     <PUSH B331>
542                     <CALL '\1aBRANCH-TAG 1>
543 PHRASE206
544                     <FRAME '\1aLABEL-TAG>
545                     <PUSH B226>
546                     <DEAD B226>
547                     <CALL '\1aLABEL-TAG 1>
548                     <FRAME '\1aMOVE-ARG>
549                     <FRAME '\1aREFERENCE>
550                     <PUSH SDIR20>
551                     <CALL '\1aREFERENCE 1 = STACK>
552                     <EQUAL? W10 'DONT-CARE - PHRASE213>
553                     <FRAME '\1aGEN-TEMP>
554                     <PUSH %<>>
555                     <CALL '\1aGEN-TEMP 1 = W10>
556 PHRASE213
557                     <PUSH W10>
558                     <CALL '\1aMOVE-ARG 2>
559                     <FRAME '\1aBRANCH-TAG>
560                     <PUSH BRANCH12>
561                     <DEAD BRANCH12>
562                     <CALL '\1aBRANCH-TAG 1>
563                     <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE218>
564                     <DEAD SETF14>
565                     <FRAME '\1aDEALLOCATE-TEMP>
566                     <PUSH W10>
567                     <CALL '\1aDEALLOCATE-TEMP 1>
568                     <FRAME '\1aMOVE-ARG>
569                     <FRAME '\1aREFERENCE>
570                     <TYPE? SDIR20 <TYPE-CODE FALSE> - TAG222>
571                     <DEAD SDIR20>
572                     <SET TEMP37 'T (TYPE ATOM)>
573                     <JUMP + TAG223>
574 TAG222
575                     <SET TEMP37 %<> (TYPE FALSE)>
576 TAG223
577                     <PUSH TEMP37>
578                     <DEAD TEMP37>
579                     <CALL '\1aREFERENCE 1 = STACK>
580                     <PUSH W10>
581                     <CALL '\1aMOVE-ARG 2>
582 PHRASE218
583                     <FRAME '\1aLABEL-TAG>
584                     <PUSH B331>
585                     <DEAD B331>
586                     <CALL '\1aLABEL-TAG 1>
587                     <JUMP + PHRASE264>
588 PHRASE193
589                     <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE227>
590                     <VEQUAL? B226 BRANCH12 - PHRASE229>
591                     <FRAME '\1aLABEL-TAG>
592                     <PUSH B331>
593                     <DEAD B331>
594                     <CALL '\1aLABEL-TAG 1>
595                     <FRAME '\1aMOVE-ARG>
596                     <PUSH TEM29>
597                     <DEAD TEM29>
598                     <PUSH W10>
599                     <DEAD W10>
600                     <CALL '\1aMOVE-ARG 2 = W10>
601                     <JUMP + PHRASE264>
602 PHRASE229
603                     <TYPE? DIR13 <TYPE-CODE FALSE> - PHRASE232>
604                     <DEAD DIR13>
605                     <FRAME '\1aLABEL-TAG>
606                     <PUSH B226>
607                     <DEAD B226>
608                     <CALL '\1aLABEL-TAG 1>
609                     <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE235>
610                     <DEAD SETF14>
611                     <FRAME '\1aDEALLOCATE-TEMP>
612                     <FRAME '\1aMOVE-ARG>
613                     <FRAME '\1aREFERENCE>
614                     <PUSH %<>>
615                     <CALL '\1aREFERENCE 1 = STACK>
616                     <PUSH W10>
617                     <CALL '\1aMOVE-ARG 2 = STACK>
618                     <CALL '\1aDEALLOCATE-TEMP 1>
619 PHRASE235
620                     <FRAME '\1aBRANCH-TAG>
621                     <PUSH BRANCH12>
622                     <DEAD BRANCH12>
623                     <CALL '\1aBRANCH-TAG 1>
624                     <FRAME '\1aLABEL-TAG>
625                     <PUSH B331>
626                     <DEAD B331>
627                     <CALL '\1aLABEL-TAG 1>
628                     <FRAME '\1aMOVE-ARG>
629                     <PUSH TEM29>
630                     <DEAD TEM29>
631                     <PUSH W10>
632                     <DEAD W10>
633                     <CALL '\1aMOVE-ARG 2 = W10>
634                     <JUMP + PHRASE264>
635 PHRASE232
636                     <FRAME '\1aBRANCH-TAG>
637                     <PUSH B331>
638                     <CALL '\1aBRANCH-TAG 1>
639                     <FRAME '\1aLABEL-TAG>
640                     <PUSH B226>
641                     <DEAD B226>
642                     <CALL '\1aLABEL-TAG 1>
643                     <FRAME '\1aMOVE-ARG>
644                     <PUSH TEM29>
645                     <DEAD TEM29>
646                     <PUSH W10>
647                     <DEAD W10>
648                     <CALL '\1aMOVE-ARG 2 = W10>
649                     <FRAME '\1aBRANCH-TAG>
650                     <PUSH BRANCH12>
651                     <DEAD BRANCH12>
652                     <CALL '\1aBRANCH-TAG 1>
653                     <FRAME '\1aLABEL-TAG>
654                     <PUSH B331>
655                     <DEAD B331>
656                     <CALL '\1aLABEL-TAG 1>
657                     <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE264>
658                     <DEAD SETF14>
659                     <FRAME '\1aDEALLOCATE-TEMP>
660                     <PUSH W10>
661                     <CALL '\1aDEALLOCATE-TEMP 1>
662                     <FRAME '\1aMOVE-ARG>
663                     <FRAME '\1aREFERENCE>
664                     <PUSH %<>>
665                     <CALL '\1aREFERENCE 1 = STACK>
666                     <PUSH W10>
667                     <CALL '\1aMOVE-ARG 2>
668                     <JUMP + PHRASE264>
669 PHRASE227
670                     <FRAME '\1aDEALLOCATE-TEMP>
671                     <PUSH TEM29>
672                     <CALL '\1aDEALLOCATE-TEMP 1>
673                     <FRAME '\1aLABEL-TAG>
674                     <PUSH B226>
675                     <DEAD B226>
676                     <CALL '\1aLABEL-TAG 1>
677                     <FRAME '\1aMOVE-ARG>
678                     <FRAME '\1aREFERENCE>
679                     <PUSH %<>>
680                     <CALL '\1aREFERENCE 1 = STACK>
681                     <EQUAL? W10 'DONT-CARE - PHRASE259>
682                     <SET TEMP37 TEM29>
683                     <JUMP + PHRASE260>
684 PHRASE259
685                     <SET TEMP37 W10>
686                     <DEAD W10>
687 PHRASE260
688                     <PUSH TEMP37>
689                     <DEAD TEMP37>
690                     <CALL '\1aMOVE-ARG 2 = W10>
691                     <EQUAL? W10 TEM29 - PHRASE262>
692                     <FRAME '\1aLABEL-TAG>
693                     <PUSH B331>
694                     <DEAD B331>
695                     <CALL '\1aLABEL-TAG 1>
696                     <JUMP + PHRASE264>
697 PHRASE262
698                     <FRAME '\1aDEALLOCATE-TEMP>
699                     <PUSH W10>
700                     <CALL '\1aDEALLOCATE-TEMP 1>
701                     <FRAME '\1aBRANCH-TAG>
702                     <FRAME '\1aMAKE-TAG>
703                     <CALL '\1aMAKE-TAG 0 = STR15>
704                     <PUSH STR15>
705                     <CALL '\1aBRANCH-TAG 1>
706                     <FRAME '\1aLABEL-TAG>
707                     <PUSH B331>
708                     <DEAD B331>
709                     <CALL '\1aLABEL-TAG 1>
710                     <FRAME '\1aMOVE-ARG>
711                     <PUSH TEM29>
712                     <DEAD TEM29>
713                     <PUSH W10>
714                     <DEAD W10>
715                     <CALL '\1aMOVE-ARG 2 = W10>
716                     <FRAME '\1aLABEL-TAG>
717                     <PUSH STR15>
718                     <DEAD STR15>
719                     <CALL '\1aLABEL-TAG 1>
720 PHRASE264
721                     <FRAME '\1aMOVE-ARG>
722                     <PUSH W10>
723                     <DEAD W10>
724                     <PUSH RW32>
725                     <DEAD RW32>
726                     <CALL '\1aMOVE-ARG 2 = TEMP37>
727                     <RETURN TEMP37>
728                     <DEAD TEMP37>
729                     <END \1aMEMQ-GEN>
730
731 <ENDPACKAGE>