Machine-Independent MDL for TOPS-20 and VAX.
[pdp10-muddle.git] / mim / development / mim / vaxc / logicgen.mima
1
2 #WORD *25723607743*
3                     <GFCN \1aAND-GEN ("VALUE" ATOM <OR <PRIMTYPE WORD> VARTBL> <OR <PRIMTYPE WORD> VARTBL> <OR VARTBL ATOM> "OPTIONAL" ANY) OP16 OP27 DEST8 HINT9>
4                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
5 OPT4
6                     <PUSH #T$UNBOUND 0>
7 OPT5
8                     <TEMP TEMP11:ATOM>
9                     <INTGO>
10                     <FRAME '\1aANDOR-GEN>
11                     <PUSH OP16>
12                     <DEAD OP16>
13                     <PUSH OP27>
14                     <DEAD OP27>
15                     <PUSH DEST8>
16                     <DEAD DEST8>
17                     <PUSH 'AND>
18                     <CALL '\1aANDOR-GEN 4 = TEMP11>
19                     <RETURN TEMP11>
20                     <DEAD TEMP11>
21                     <END \1aAND-GEN>
22
23 #WORD *25663617663*
24                     <GFCN \1aOR-GEN ("VALUE" ATOM <OR <PRIMTYPE WORD> VARTBL> <OR <PRIMTYPE WORD> VARTBL> <OR VARTBL ATOM> "OPTIONAL" ANY) OP16 OP27 DEST8 HINT9>
25                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
26 OPT4
27                     <PUSH #T$UNBOUND 0>
28 OPT5
29                     <TEMP TEMP11:ATOM>
30                     <INTGO>
31                     <FRAME '\1aANDOR-GEN>
32                     <PUSH OP16>
33                     <DEAD OP16>
34                     <PUSH OP27>
35                     <DEAD OP27>
36                     <PUSH DEST8>
37                     <DEAD DEST8>
38                     <PUSH 'OR>
39                     <CALL '\1aANDOR-GEN 4 = TEMP11>
40                     <RETURN TEMP11>
41                     <DEAD TEMP11>
42                     <END \1aOR-GEN>
43
44 #WORD *13447406441*
45                     <GFCN \1aEOR-GEN ("VALUE" ATOM <OR <PRIMTYPE WORD> VARTBL> <OR <PRIMTYPE WORD> VARTBL> <OR VARTBL ATOM> "OPTIONAL" ANY) OP16 OP27 DEST8 HINT9>
46                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
47 OPT4
48                     <PUSH #T$UNBOUND 0>
49 OPT5
50                     <TEMP TEMP11:ATOM>
51                     <INTGO>
52                     <FRAME '\1aANDOR-GEN>
53                     <PUSH OP16>
54                     <DEAD OP16>
55                     <PUSH OP27>
56                     <DEAD OP27>
57                     <PUSH DEST8>
58                     <DEAD DEST8>
59                     <PUSH 'EOR>
60                     <CALL '\1aANDOR-GEN 4 = TEMP11>
61                     <RETURN TEMP11>
62                     <DEAD TEMP11>
63                     <END \1aEOR-GEN>
64
65 #WORD *13727406541*
66                     <GFCN \1aEQV-GEN ("VALUE" ATOM <OR <PRIMTYPE WORD> VARTBL> <OR <PRIMTYPE WORD> VARTBL> <OR VARTBL ATOM> "OPTIONAL" ANY) OP16 OP27 DEST8 HINT9>
67                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
68 OPT4
69                     <PUSH #T$UNBOUND 0>
70 OPT5
71                     <TEMP TEMP11:ATOM>
72                     <INTGO>
73                     <FRAME '\1aANDOR-GEN>
74                     <PUSH OP16>
75                     <DEAD OP16>
76                     <PUSH OP27>
77                     <DEAD OP27>
78                     <PUSH DEST8>
79                     <DEAD DEST8>
80                     <PUSH 'EQV>
81                     <CALL '\1aANDOR-GEN 4 = TEMP11>
82                     <RETURN TEMP11>
83                     <DEAD TEMP11>
84                     <END \1aEQV-GEN>
85
86 #WORD *35447445621*
87                     <GFCN \1aANDOR-GEN ("VALUE" ATOM <OR <PRIMTYPE WORD> VARTBL> <OR <PRIMTYPE WORD> VARTBL> <OR VARTBL ATOM> ATOM) OP14 OP25 DEST6 OPC7>
88                     <TEMP (VAC8 %<>) TMP9 TEMP19>
89                     <INTGO>
90                     <SET TMP9 OP14>
91                     <TYPE? TMP9 <TYPE-CODE VARTBL> + PHRASE12>
92                     <SET OP14 OP25>
93                     <DEAD OP25>
94                     <SET OP25 TMP9>
95                     <DEAD TMP9>
96 PHRASE12
97                     <TYPE? OP25 <TYPE-CODE VARTBL> + PHRASE14>
98                     <CHTYPE OP25 <TYPE-CODE FIX> = OP25>
99 PHRASE14
100                     <FRAME '\1aFIND-CACHE-VAR>
101                     <PUSH OP14>
102                     <CALL '\1aFIND-CACHE-VAR 1 = VAC8>
103                     <TYPE? VAC8 <TYPE-CODE FALSE> + BOOL16>
104                     <NTHUV VAC8 6 = VAC8>
105                     <TYPE? VAC8 <TYPE-CODE FALSE> + BOOL16>
106                     <FRAME '\1aAVAILABLE?>
107                     <PUSH VAC8>
108                     <CALL '\1aAVAILABLE? 1 = TEMP19>
109                     <TYPE? TEMP19 <TYPE-CODE FALSE> - PHRASE24>
110                     <DEAD TEMP19>
111 BOOL16
112                     <TYPE? OP25 <TYPE-CODE VARTBL> - PHRASE20>
113                     <FRAME '\1aFIND-CACHE-VAR>
114                     <SET TMP9 OP25>
115                     <PUSH TMP9>
116                     <CALL '\1aFIND-CACHE-VAR 1 = VAC8>
117                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE20>
118                     <NTHUV VAC8 6 = VAC8>
119                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE20>
120                     <FRAME '\1aAVAILABLE?>
121                     <PUSH VAC8>
122                     <CALL '\1aAVAILABLE? 1 = TEMP19>
123                     <TYPE? TEMP19 <TYPE-CODE FALSE> + PHRASE20>
124                     <DEAD TEMP19>
125                     <SET OP25 OP14>
126                     <DEAD OP14>
127                     <SET OP14 TMP9>
128                     <DEAD TMP9>
129                     <JUMP + PHRASE24>
130 PHRASE20
131                     <SET VAC8 %<> (TYPE FALSE)>
132 PHRASE24
133                     <VEQUAL? VAC8 0 + PHRASE26>
134                     <FRAME '\1aMUNG-AC>
135                     <PUSH VAC8>
136                     <CALL '\1aMUNG-AC 1>
137 PHRASE26
138                     <TYPE? OP25 <TYPE-CODE FIX> - PHRASE29>
139                     <VEQUAL? OPC7 'EQV - PHRASE31>
140                     <XOR OP25 #WORD *777777777777* = OP25>
141                     <SET OPC7 'EOR (TYPE ATOM)>
142                     <JUMP + PHRASE43>
143 PHRASE31
144                     <VEQUAL? OPC7 'AND - PHRASE43>
145                     <XOR OP25 #WORD *777777777777* = OP25>
146                     <JUMP + PHRASE43>
147 PHRASE29
148                     <VEQUAL? OPC7 'EQV + BOOL34>
149                     <VEQUAL? OPC7 'AND - PHRASE43>
150 BOOL34
151                     <VEQUAL? VAC8 0 + PHRASE36>
152                     <FRAME '\1aEMIT>
153                     <PUSH 210>
154                     <NTHUV VAC8 2 = TEMP19 (TYPE FIX)>
155                     <OR TEMP19 #WORD *120* = TEMP19>
156                     <LSH TEMP19 24 = TEMP19 (TYPE FIX)>
157                     <CHTYPE TEMP19 <TYPE-CODE EFF-ADDR> = STACK>
158                     <DEAD TEMP19>
159                     <NTHUV VAC8 2 = TEMP19 (TYPE FIX)>
160                     <OR TEMP19 #WORD *120* = TEMP19>
161                     <LSH TEMP19 24 = TEMP19 (TYPE FIX)>
162                     <CHTYPE TEMP19 <TYPE-CODE EFF-ADDR> = STACK>
163                     <DEAD TEMP19>
164                     <CALL '\1aEMIT 3>
165                     <JUMP + PHRASE38>
166 PHRASE36
167                     <FRAME '\1aEMIT>
168                     <PUSH 210>
169                     <FRAME '\1aVAR-VALUE-ADDRESS>
170                     <PUSH OP14>
171                     <CALL '\1aVAR-VALUE-ADDRESS 1 = STACK>
172                     <FRAME '\1aGET-AC>
173                     <PUSH 'PREF-VAL>
174                     <PUSH 'T>
175                     <CALL '\1aGET-AC 2 = VAC8>
176                     <NTHUV VAC8 2 = TEMP19 (TYPE FIX)>
177                     <OR TEMP19 #WORD *120* = TEMP19>
178                     <LSH TEMP19 24 = TEMP19 (TYPE FIX)>
179                     <CHTYPE TEMP19 <TYPE-CODE EFF-ADDR> = STACK>
180                     <DEAD TEMP19>
181                     <CALL '\1aEMIT 3>
182 PHRASE38
183                     <VEQUAL? OPC7 'EQV - PHRASE43>
184                     <SET OPC7 'EOR (TYPE ATOM)>
185 PHRASE43
186                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE45>
187                     <VEQUAL? OPC7 'AND - BOOL47>
188                     <TYPE? OP25 <TYPE-CODE FIX> - PHRASE45>
189 BOOL47
190                     <FRAME '\1aEMIT>
191                     <VEQUAL? OPC7 'AND - PHRASE50>
192                     <SET TEMP19 202 (TYPE FIX)>
193                     <JUMP + PHRASE52>
194 PHRASE50
195                     <VEQUAL? OPC7 'EOR - PHRASE51>
196                     <DEAD OPC7>
197                     <SET TEMP19 204 (TYPE FIX)>
198                     <JUMP + PHRASE52>
199 PHRASE51
200                     <SET TEMP19 200 (TYPE FIX)>
201 PHRASE52
202                     <PUSH TEMP19>
203                     <DEAD TEMP19>
204                     <TYPE? OP25 <TYPE-CODE FIX> - PHRASE54>
205                     <FRAME '\1aMA-IMM>
206                     <PUSH OP25>
207                     <DEAD OP25>
208                     <CALL '\1aMA-IMM 1 = TEMP19>
209                     <JUMP + PHRASE56>
210 PHRASE54
211                     <FRAME '\1aVAR-VALUE-ADDRESS>
212                     <PUSH OP25>
213                     <DEAD OP25>
214                     <CALL '\1aVAR-VALUE-ADDRESS 1 = TEMP19>
215 PHRASE56
216                     <PUSH TEMP19>
217                     <DEAD TEMP19>
218                     <NTHUV VAC8 2 = TEMP19 (TYPE FIX)>
219                     <OR TEMP19 #WORD *120* = TEMP19>
220                     <LSH TEMP19 24 = TEMP19 (TYPE FIX)>
221                     <CHTYPE TEMP19 <TYPE-CODE EFF-ADDR> = STACK>
222                     <DEAD TEMP19>
223                     <CALL '\1aEMIT 3>
224                     <JUMP + PHRASE67>
225 PHRASE45
226                     <TYPE? OP25 <TYPE-CODE FIX> - PHRASE58>
227                     <FRAME '\1aEMIT>
228                     <VEQUAL? OPC7 'AND - PHRASE61>
229                     <SET TEMP19 203 (TYPE FIX)>
230                     <JUMP + PHRASE63>
231 PHRASE61
232                     <VEQUAL? OPC7 'EOR - PHRASE62>
233                     <DEAD OPC7>
234                     <SET TEMP19 205 (TYPE FIX)>
235                     <JUMP + PHRASE63>
236 PHRASE62
237                     <SET TEMP19 201 (TYPE FIX)>
238 PHRASE63
239                     <PUSH TEMP19>
240                     <DEAD TEMP19>
241                     <FRAME '\1aMA-IMM>
242                     <PUSH OP25>
243                     <DEAD OP25>
244                     <CALL '\1aMA-IMM 1 = STACK>
245                     <FRAME '\1aVAR-VALUE-ADDRESS>
246                     <PUSH OP14>
247                     <DEAD OP14>
248                     <CALL '\1aVAR-VALUE-ADDRESS 1 = STACK>
249                     <FRAME '\1aGET-AC>
250                     <PUSH 'PREF-VAL>
251                     <PUSH 'T>
252                     <CALL '\1aGET-AC 2 = VAC8>
253                     <NTHUV VAC8 2 = TEMP19 (TYPE FIX)>
254                     <OR TEMP19 #WORD *120* = TEMP19>
255                     <LSH TEMP19 24 = TEMP19 (TYPE FIX)>
256                     <CHTYPE TEMP19 <TYPE-CODE EFF-ADDR> = STACK>
257                     <DEAD TEMP19>
258                     <CALL '\1aEMIT 4>
259                     <JUMP + PHRASE67>
260 PHRASE58
261                     <FRAME '\1aEMIT>
262                     <VEQUAL? OPC7 'AND - PHRASE70>
263                     <SET TEMP19 203 (TYPE FIX)>
264                     <JUMP + PHRASE72>
265 PHRASE70
266                     <VEQUAL? OPC7 'EOR - PHRASE71>
267                     <DEAD OPC7>
268                     <SET TEMP19 205 (TYPE FIX)>
269                     <JUMP + PHRASE72>
270 PHRASE71
271                     <SET TEMP19 201 (TYPE FIX)>
272 PHRASE72
273                     <PUSH TEMP19>
274                     <DEAD TEMP19>
275                     <TYPE? OP14 <TYPE-CODE FIX> - PHRASE74>
276                     <FRAME '\1aMA-IMM>
277                     <PUSH OP14>
278                     <DEAD OP14>
279                     <CALL '\1aMA-IMM 1 = TEMP19>
280                     <JUMP + PHRASE78>
281 PHRASE74
282                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE76>
283                     <NTHUV VAC8 2 = TMP9 (TYPE FIX)>
284                     <OR TMP9 #WORD *120* = TMP9>
285                     <LSH TMP9 24 = TMP9 (TYPE FIX)>
286                     <CHTYPE TMP9 <TYPE-CODE EFF-ADDR> = TEMP19>
287                     <DEAD TMP9>
288                     <JUMP + PHRASE78>
289 PHRASE76
290                     <FRAME '\1aVAR-VALUE-ADDRESS>
291                     <PUSH OP14>
292                     <DEAD OP14>
293                     <CALL '\1aVAR-VALUE-ADDRESS 1 = TEMP19>
294 PHRASE78
295                     <PUSH TEMP19>
296                     <DEAD TEMP19>
297                     <FRAME '\1aVAR-VALUE-ADDRESS>
298                     <PUSH OP25>
299                     <DEAD OP25>
300                     <CALL '\1aVAR-VALUE-ADDRESS 1 = STACK>
301                     <SET TEMP19 VAC8>
302                     <TYPE? TEMP19 <TYPE-CODE FALSE> - PHRASE82>
303                     <FRAME '\1aGET-AC>
304                     <PUSH 'PREF-VAL>
305                     <PUSH 'T>
306                     <CALL '\1aGET-AC 2 = VAC8>
307                     <SET TEMP19 VAC8>
308 PHRASE82
309                     <NTHUV TEMP19 2 = TMP9 (TYPE FIX)>
310                     <DEAD TEMP19>
311                     <OR TMP9 #WORD *120* = TMP9>
312                     <LSH TMP9 24 = TMP9 (TYPE FIX)>
313                     <CHTYPE TMP9 <TYPE-CODE EFF-ADDR> = STACK>
314                     <DEAD TMP9>
315                     <CALL '\1aEMIT 4>
316 PHRASE67
317                     <FRAME '\1aDEST-DECL>
318                     <PUSH VAC8>
319                     <DEAD VAC8>
320                     <PUSH DEST6>
321                     <DEAD DEST6>
322                     <PUSH 'FIX>
323                     <CALL '\1aDEST-DECL 3>
324                     <RETURN 'NORMAL>
325                     <END \1aANDOR-GEN>
326
327 #WORD *13124635253*
328                     <GFCN \1aASH-GEN ("VALUE" ATOM <OR FIX VARTBL> <OR FIX VARTBL> <OR ATOM VARTBL> "OPTIONAL" ANY) VAL16 VAL27 DEST8 HINT9>
329                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
330 OPT4
331                     <PUSH #T$UNBOUND 0>
332 OPT5
333                     <TEMP TEMP11:ATOM>
334                     <INTGO>
335                     <FRAME '\1aSHIFT-GEN>
336                     <PUSH VAL16>
337                     <DEAD VAL16>
338                     <PUSH VAL27>
339                     <DEAD VAL27>
340                     <PUSH DEST8>
341                     <DEAD DEST8>
342                     <PUSH 'ASH>
343                     <CALL '\1aSHIFT-GEN 4 = TEMP11>
344                     <RETURN TEMP11>
345                     <DEAD TEMP11>
346                     <END \1aASH-GEN>
347
348 #WORD *25250435511*
349                     <GFCN \1aLSH-GEN ("VALUE" ATOM <OR FIX VARTBL> <OR FIX VARTBL> <OR ATOM VARTBL> "OPTIONAL" ANY) VAL16 VAL27 DEST8 HINT9>
350                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
351 OPT4
352                     <PUSH #T$UNBOUND 0>
353 OPT5
354                     <TEMP TEMP11:ATOM>
355                     <INTGO>
356                     <FRAME '\1aSHIFT-GEN>
357                     <PUSH VAL16>
358                     <DEAD VAL16>
359                     <PUSH VAL27>
360                     <DEAD VAL27>
361                     <PUSH DEST8>
362                     <DEAD DEST8>
363                     <PUSH 'LSH>
364                     <CALL '\1aSHIFT-GEN 4 = TEMP11>
365                     <RETURN TEMP11>
366                     <DEAD TEMP11>
367                     <END \1aLSH-GEN>
368
369 #WORD *25110436411*
370                     <GFCN \1aROT-GEN ("VALUE" ATOM <OR FIX VARTBL> <OR FIX VARTBL> <OR ATOM VARTBL> "OPTIONAL" ANY) VAL16 VAL27 DEST8 HINT9>
371                     <OPT-DISPATCH 3 %<> OPT4 OPT5>
372 OPT4
373                     <PUSH #T$UNBOUND 0>
374 OPT5
375                     <TEMP TEMP11:ATOM>
376                     <INTGO>
377                     <FRAME '\1aSHIFT-GEN>
378                     <PUSH VAL16>
379                     <DEAD VAL16>
380                     <PUSH VAL27>
381                     <DEAD VAL27>
382                     <PUSH DEST8>
383                     <DEAD DEST8>
384                     <PUSH 'ROT>
385                     <CALL '\1aSHIFT-GEN 4 = TEMP11>
386                     <RETURN TEMP11>
387                     <DEAD TEMP11>
388                     <END \1aROT-GEN>
389
390 #WORD *20701161375*
391                     <GFCN \1aSHIFT-GEN ("VALUE" ATOM <OR VARTBL <PRIMTYPE FIX>> <OR VARTBL <PRIMTYPE FIX>> <OR VARTBL ATOM> ATOM) VAL14 VAL25 DEST6 OPC7>
392                     <TEMP (VAC8 %<>) (USE-LONG9 %<>) TEMP34>
393                     <INTGO>
394                     <TYPE? VAL14 <TYPE-CODE VARTBL> + PHRASE12>
395                     <CHTYPE VAL14 <TYPE-CODE FIX> = VAL14>
396 PHRASE12
397                     <TYPE? VAL25 <TYPE-CODE VARTBL> + PHRASE14>
398                     <CHTYPE VAL25 <TYPE-CODE FIX> = VAL25>
399 PHRASE14
400                     <VEQUAL? OPC7 'LSH - PHRASE16>
401                     <TYPE? VAL14 <TYPE-CODE VARTBL> + BOOL18>
402                     <LESS? VAL14 0 - PHRASE16 (TYPE FIX)>
403 BOOL18
404                     <TYPE? VAL25 <TYPE-CODE VARTBL> + BOOL21>
405                     <LESS? VAL25 0 - PHRASE16 (TYPE FIX)>
406 BOOL21
407                     <FRAME '\1aGET-AC>
408                     <PUSH 'PREF-VAL>
409                     <PUSH 'T>
410                     <CALL '\1aGET-AC 2 = VAC8>
411                     <FRAME '\1aGET-AC>
412                     <FRAME '\1aNEXT-AC>
413                     <PUSH VAC8>
414                     <CALL '\1aNEXT-AC 1 = STACK>
415                     <PUSH 'T>
416                     <CALL '\1aGET-AC 2>
417                     <SET USE-LONG9 'T (TYPE ATOM)>
418                     <TYPE? VAL14 <TYPE-CODE VARTBL> - PHRASE28>
419                     <FRAME '\1aLOAD-VAR>
420                     <PUSH VAL14>
421                     <PUSH 'VALUE>
422                     <PUSH 'T>
423                     <PUSH VAC8>
424                     <CALL '\1aLOAD-VAR 4>
425                     <JUMP + PHRASE30>
426 PHRASE28
427                     <FRAME '\1aLOAD-CONSTANT>
428                     <PUSH VAC8>
429                     <PUSH VAL14>
430                     <CALL '\1aLOAD-CONSTANT 2>
431 PHRASE30
432                     <FRAME '\1aEMIT>
433                     <PUSH 212>
434                     <FRAME '\1aNEXT-AC>
435                     <PUSH VAC8>
436                     <CALL '\1aNEXT-AC 1 = TEMP34>
437                     <NTHUV TEMP34 2 = TEMP34 (TYPE FIX)>
438                     <OR TEMP34 #WORD *120* = TEMP34>
439                     <LSH TEMP34 24 = TEMP34 (TYPE FIX)>
440                     <CHTYPE TEMP34 <TYPE-CODE EFF-ADDR> = STACK>
441                     <DEAD TEMP34>
442                     <CALL '\1aEMIT 2>
443                     <JUMP + PHRASE35>
444 PHRASE16
445                     <TYPE? VAL14 <TYPE-CODE FIX> + BOOL37>
446                     <FRAME '\1aFIND-CACHE-VAR>
447                     <PUSH VAL14>
448                     <CALL '\1aFIND-CACHE-VAR 1 = VAC8>
449                     <TYPE? VAC8 <TYPE-CODE FALSE> + BOOL37>
450                     <NTHUV VAC8 6 = VAC8>
451                     <TYPE? VAC8 <TYPE-CODE FALSE> + BOOL37>
452                     <FRAME '\1aAVAILABLE?>
453                     <PUSH VAC8>
454                     <CALL '\1aAVAILABLE? 1 = TEMP34>
455                     <TYPE? TEMP34 <TYPE-CODE FALSE> - PHRASE35>
456                     <DEAD TEMP34>
457 BOOL37
458                     <SET VAC8 %<> (TYPE FALSE)>
459 PHRASE35
460                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE41>
461                     <EQUAL? VAL14 DEST6 + PHRASE41>
462                     <FRAME '\1aMUNG-AC>
463                     <PUSH VAC8>
464                     <CALL '\1aMUNG-AC 1>
465 PHRASE41
466                     <FRAME '\1aEMIT>
467                     <VEQUAL? OPC7 'ROT - PHRASE46>
468                     <DEAD OPC7>
469                     <SET TEMP34 156 (TYPE FIX)>
470                     <JUMP + PHRASE49>
471 PHRASE46
472                     <VEQUAL? USE-LONG9 0 + PHRASE48>
473                     <SET TEMP34 121 (TYPE FIX)>
474                     <JUMP + PHRASE49>
475 PHRASE48
476                     <SET TEMP34 120 (TYPE FIX)>
477 PHRASE49
478                     <PUSH TEMP34>
479                     <DEAD TEMP34>
480                     <TYPE? VAL25 <TYPE-CODE FIX> - PHRASE51>
481                     <FRAME '\1aMA-IMM>
482                     <PUSH VAL25>
483                     <DEAD VAL25>
484                     <CALL '\1aMA-IMM 1 = TEMP34>
485                     <JUMP + PHRASE53>
486 PHRASE51
487                     <FRAME '\1aVAR-VALUE-ADDRESS>
488                     <PUSH VAL25>
489                     <DEAD VAL25>
490                     <CALL '\1aVAR-VALUE-ADDRESS 1 = TEMP34>
491 PHRASE53
492                     <PUSH TEMP34>
493                     <DEAD TEMP34>
494                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE56>
495                     <NTHUV VAC8 2 = TEMP34 (TYPE FIX)>
496                     <OR TEMP34 #WORD *120* = TEMP34>
497                     <LSH TEMP34 24 = TEMP34 (TYPE FIX)>
498                     <CHTYPE TEMP34 <TYPE-CODE EFF-ADDR> = TEMP34>
499                     <JUMP + PHRASE59>
500 PHRASE56
501                     <TYPE? VAL14 <TYPE-CODE FIX> - PHRASE57>
502                     <FRAME '\1aMA-IMM>
503                     <PUSH VAL14>
504                     <DEAD VAL14>
505                     <CALL '\1aMA-IMM 1 = TEMP34>
506                     <JUMP + PHRASE59>
507 PHRASE57
508                     <FRAME '\1aVAR-VALUE-ADDRESS>
509                     <PUSH VAL14>
510                     <DEAD VAL14>
511                     <CALL '\1aVAR-VALUE-ADDRESS 1 = TEMP34>
512 PHRASE59
513                     <PUSH TEMP34>
514                     <DEAD TEMP34>
515                     <VEQUAL? USE-LONG9 0 + PHRASE62>
516                     <DEAD USE-LONG9>
517                     <NTHUV VAC8 2 = TEMP34 (TYPE FIX)>
518                     <OR TEMP34 #WORD *120* = TEMP34>
519                     <LSH TEMP34 24 = TEMP34 (TYPE FIX)>
520                     <CHTYPE TEMP34 <TYPE-CODE EFF-ADDR> = TEMP34>
521                     <JUMP + PHRASE65>
522 PHRASE62
523                     <TYPE? VAC8 <TYPE-CODE FALSE> + PHRASE63>
524                     <NTHUV VAC8 2 = USE-LONG9 (TYPE FIX)>
525                     <OR USE-LONG9 #WORD *120* = USE-LONG9>
526                     <LSH USE-LONG9 24 = USE-LONG9 (TYPE FIX)>
527                     <CHTYPE USE-LONG9 <TYPE-CODE EFF-ADDR> = TEMP34>
528                     <DEAD USE-LONG9>
529                     <JUMP + PHRASE65>
530 PHRASE63
531                     <FRAME '\1aGET-AC>
532                     <PUSH 'PREF-VAL>
533                     <PUSH 'T>
534                     <CALL '\1aGET-AC 2 = VAC8>
535                     <NTHUV VAC8 2 = USE-LONG9 (TYPE FIX)>
536                     <OR USE-LONG9 #WORD *120* = USE-LONG9>
537                     <LSH USE-LONG9 24 = USE-LONG9 (TYPE FIX)>
538                     <CHTYPE USE-LONG9 <TYPE-CODE EFF-ADDR> = TEMP34>
539                     <DEAD USE-LONG9>
540 PHRASE65
541                     <PUSH TEMP34>
542                     <DEAD TEMP34>
543                     <CALL '\1aEMIT 4>
544                     <FRAME '\1aDEST-DECL>
545                     <PUSH VAC8>
546                     <DEAD VAC8>
547                     <PUSH DEST6>
548                     <DEAD DEST6>
549                     <PUSH 'FIX>
550                     <CALL '\1aDEST-DECL 3>
551                     <RETURN 'NORMAL>
552                     <END \1aSHIFT-GEN>