1/******************************** -*- C -*- ****************************
2 *
3 *	Byte Code definitions.
4 *
5 *
6 ***********************************************************************/
7
8/***********************************************************************
9 *
10 * Copyright 2003, 2006 Free Software Foundation, Inc.
11 * Written by Paolo Bonzini.
12 *
13 * This file is part of GNU Smalltalk.
14 *
15 * GNU Smalltalk is free software; you can redistribute it and/or modify it
16 * under the terms of the GNU General Public License as published by the Free
17 * Software Foundation; either version 2, or (at your option) any later
18 * version.
19 *
20 * Linking GNU Smalltalk statically or dynamically with other modules is
21 * making a combined work based on GNU Smalltalk.  Thus, the terms and
22 * conditions of the GNU General Public License cover the whole
23 * combination.
24 *
25 * In addition, as a special exception, the Free Software Foundation
26 * give you permission to combine GNU Smalltalk with free software
27 * programs or libraries that are released under the GNU LGPL and with
28 * independent programs running under the GNU Smalltalk virtual machine.
29 *
30 * You may copy and distribute such a system following the terms of the
31 * GNU GPL for GNU Smalltalk and the licenses of the other code
32 * concerned, provided that you include the source code of that other
33 * code when and as the GNU GPL requires distribution of source code.
34 *
35 * Note that people who make modified versions of GNU Smalltalk are not
36 * obligated to grant this special exception for their modified
37 * versions; it is their choice whether to do so.  The GNU General
38 * Public License gives permission to release a modified version without
39 * this exception; this exception also makes it possible to release a
40 * modified version which carries forward this exception.
41 *
42 * GNU Smalltalk is distributed in the hope that it will be useful, but WITHOUT
43 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
44 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
45 * more details.
46 *
47 * You should have received a copy of the GNU General Public License along with
48 * GNU Smalltalk; see the file COPYING.  If not, write to the Free Software
49 * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
50 *
51 ***********************************************************************/
52
53/* This is C code which is wrapped within patterns; the patterns can
54   be BEGIN/END a la awk, numbers, or ranges of numbers separated by
55   ``..''.  Patterns don't fall through, unlike C's switch statements.
56
57   There are special keywords: extract advances the instruction
58   pointer and reads bits from it; dispatch goes to the named section
59   of the MATCH_BYTECODES occurrence; break gets out of the
60   MATCH_BYTECODES block; continue matches the next bytecode without
61   executing anything in the MATCH_BYTECODES occurrence.
62
63   In awk tradition, we also have a couple of predefined variables
64   whose name is in uppercase... :-) these are IP which is the current
65   instruction pointer (including the bytecodes that were dissected
66   with extract), and IP0 which is the value of the instruction
67   pointer on entrance to MATCH_BYTECODES (it is never changed, not
68   even by continue statements).  You can see them used in the
69   jump patterns below (40..43) */
70
71/* Define the bytecodes and their arguments */
72SEND_ARITH (n);
73SEND_SPECIAL (n);
74SEND (n, super, num_args);
75SEND_IMMEDIATE (n, super);
76PUSH_TEMPORARY_VARIABLE (n);
77PUSH_OUTER_TEMP (n, scopes);
78PUSH_LIT_VARIABLE (n);
79PUSH_RECEIVER_VARIABLE (n);
80STORE_TEMPORARY_VARIABLE (n);
81STORE_OUTER_TEMP (n, scopes);
82STORE_LIT_VARIABLE (n);
83STORE_RECEIVER_VARIABLE (n);
84JUMP (ofs);
85POP_JUMP_TRUE (ofs);
86POP_JUMP_FALSE (ofs);
87PUSH_INTEGER (n);
88PUSH_SELF;
89PUSH_SPECIAL (n);
90PUSH_LIT_CONSTANT (n);
91POP_INTO_NEW_STACKTOP (n);
92POP_STACK_TOP;
93MAKE_DIRTY_BLOCK;
94RETURN_METHOD_STACK_TOP;
95RETURN_CONTEXT_STACK_TOP;
96DUP_STACK_TOP;
97EXIT_INTERPRETER;
98LINE_NUMBER_BYTECODE (n);
99INVALID (opcode, arg);
100
101/* Automatically generated by superops.  Do not modify past this line!  */
102/* PLUS_SPECIAL(*) */
1030 {
104  extract opcode (8), arg_lsb (8);
105  dispatch SEND_ARITH (0);
106}
107
108/* MINUS_SPECIAL(*) */
1091 {
110  extract opcode (8), arg_lsb (8);
111  dispatch SEND_ARITH (1);
112}
113
114/* LESS_THAN_SPECIAL(*) */
1152 {
116  extract opcode (8), arg_lsb (8);
117  dispatch SEND_ARITH (2);
118}
119
120/* GREATER_THAN_SPECIAL(*) */
1213 {
122  extract opcode (8), arg_lsb (8);
123  dispatch SEND_ARITH (3);
124}
125
126/* LESS_EQUAL_SPECIAL(*) */
1274 {
128  extract opcode (8), arg_lsb (8);
129  dispatch SEND_ARITH (4);
130}
131
132/* GREATER_EQUAL_SPECIAL(*) */
1335 {
134  extract opcode (8), arg_lsb (8);
135  dispatch SEND_ARITH (5);
136}
137
138/* EQUAL_SPECIAL(*) */
1396 {
140  extract opcode (8), arg_lsb (8);
141  dispatch SEND_ARITH (6);
142}
143
144/* NOT_EQUAL_SPECIAL(*) */
1457 {
146  extract opcode (8), arg_lsb (8);
147  dispatch SEND_ARITH (7);
148}
149
150/* TIMES_SPECIAL(*) */
1518 {
152  extract opcode (8), arg_lsb (8);
153  dispatch SEND_ARITH (8);
154}
155
156/* DIVIDE_SPECIAL(*) */
1579 {
158  extract opcode (8), arg_lsb (8);
159  dispatch SEND_ARITH (9);
160}
161
162/* REMAINDER_SPECIAL(*) */
16310 {
164  extract opcode (8), arg_lsb (8);
165  dispatch SEND_ARITH (10);
166}
167
168/* BIT_XOR_SPECIAL(*) */
16911 {
170  extract opcode (8), arg_lsb (8);
171  dispatch SEND_ARITH (11);
172}
173
174/* BIT_SHIFT_SPECIAL(*) */
17512 {
176  extract opcode (8), arg_lsb (8);
177  dispatch SEND_ARITH (12);
178}
179
180/* INTEGER_DIVIDE_SPECIAL(*) */
18113 {
182  extract opcode (8), arg_lsb (8);
183  dispatch SEND_ARITH (13);
184}
185
186/* BIT_AND_SPECIAL(*) */
18714 {
188  extract opcode (8), arg_lsb (8);
189  dispatch SEND_ARITH (14);
190}
191
192/* BIT_OR_SPECIAL(*) */
19315 {
194  extract opcode (8), arg_lsb (8);
195  dispatch SEND_ARITH (15);
196}
197
198/* AT_SPECIAL(*) */
19916 {
200  extract opcode (8), arg_lsb (8);
201  dispatch SEND_SPECIAL (0);
202}
203
204/* AT_PUT_SPECIAL(*) */
20517 {
206  extract opcode (8), arg_lsb (8);
207  dispatch SEND_SPECIAL (1);
208}
209
210/* SIZE_SPECIAL(*) */
21118 {
212  extract opcode (8), arg_lsb (8);
213  dispatch SEND_SPECIAL (2);
214}
215
216/* CLASS_SPECIAL(*) */
21719 {
218  extract opcode (8), arg_lsb (8);
219  dispatch SEND_SPECIAL (3);
220}
221
222/* IS_NIL_SPECIAL(*) */
22320 {
224  extract opcode (8), arg_lsb (8);
225  dispatch SEND_SPECIAL (4);
226}
227
228/* NOT_NIL_SPECIAL(*) */
22921 {
230  extract opcode (8), arg_lsb (8);
231  dispatch SEND_SPECIAL (5);
232}
233
234/* VALUE_SPECIAL(*) */
23522 {
236  extract opcode (8), arg_lsb (8);
237  dispatch SEND_SPECIAL (6);
238}
239
240/* VALUE_COLON_SPECIAL(*) */
24123 {
242  extract opcode (8), arg_lsb (8);
243  dispatch SEND_SPECIAL (7);
244}
245
246/* SAME_OBJECT_SPECIAL(*) */
24724 {
248  extract opcode (8), arg_lsb (8);
249  dispatch SEND_SPECIAL (8);
250}
251
252/* JAVA_AS_INT_SPECIAL(*) */
25325 {
254  extract opcode (8), arg_lsb (8);
255  dispatch SEND_SPECIAL (9);
256}
257
258/* JAVA_AS_LONG_SPECIAL(*) */
25926 {
260  extract opcode (8), arg_lsb (8);
261  dispatch SEND_SPECIAL (10);
262}
263
264/* invalid bytecode */
26527 {
266  extract opcode (8), arg_lsb (8);
267  dispatch INVALID (27, arg | arg_lsb);
268}
269
270/* SEND(*) */
27128 {
272  extract opcode (8), arg_lsb (8);
273  dispatch SEND (arg >> 8, 0, arg_lsb);
274}
275
276/* SEND_SUPER(*) */
27729 {
278  extract opcode (8), arg_lsb (8);
279  dispatch SEND (arg >> 8, 1, arg_lsb);
280}
281
282/* SEND_IMMEDIATE(*) */
28330 {
284  extract opcode (8), arg_lsb (8);
285  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
286}
287
288/* SEND_SUPER_IMMEDIATE(*) */
28931 {
290  extract opcode (8), arg_lsb (8);
291  dispatch SEND_IMMEDIATE (arg | arg_lsb, 1);
292}
293
294/* PUSH_TEMPORARY_VARIABLE(*) */
29532 {
296  extract opcode (8), arg_lsb (8);
297  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
298}
299
300/* PUSH_OUTER_TEMP(*) */
30133 {
302  extract opcode (8), arg_lsb (8);
303  dispatch PUSH_OUTER_TEMP (arg >> 8, arg_lsb);
304}
305
306/* PUSH_LIT_VARIABLE(*) */
30734 {
308  extract opcode (8), arg_lsb (8);
309  dispatch PUSH_LIT_VARIABLE (arg | arg_lsb);
310}
311
312/* PUSH_RECEIVER_VARIABLE(*) */
31335 {
314  extract opcode (8), arg_lsb (8);
315  dispatch PUSH_RECEIVER_VARIABLE (arg | arg_lsb);
316}
317
318/* STORE_TEMPORARY_VARIABLE(*) */
31936 {
320  extract opcode (8), arg_lsb (8);
321  dispatch STORE_TEMPORARY_VARIABLE (arg | arg_lsb);
322}
323
324/* STORE_OUTER_TEMP(*) */
32537 {
326  extract opcode (8), arg_lsb (8);
327  dispatch STORE_OUTER_TEMP (arg >> 8, arg_lsb);
328}
329
330/* STORE_LIT_VARIABLE(*) */
33138 {
332  extract opcode (8), arg_lsb (8);
333  dispatch STORE_LIT_VARIABLE (arg | arg_lsb);
334}
335
336/* STORE_RECEIVER_VARIABLE(*) */
33739 {
338  extract opcode (8), arg_lsb (8);
339  dispatch STORE_RECEIVER_VARIABLE (arg | arg_lsb);
340}
341
342/* JUMP_BACK(*) */
34340 {
344  extract opcode (8), arg_lsb (8);
345  dispatch JUMP (IP - IP0 - (arg | arg_lsb));
346}
347
348/* JUMP(*) */
34941 {
350  extract opcode (8), arg_lsb (8);
351  dispatch JUMP (IP - IP0 + (arg | arg_lsb));
352}
353
354/* POP_JUMP_TRUE(*) */
35542 {
356  extract opcode (8), arg_lsb (8);
357  dispatch POP_JUMP_TRUE (IP - IP0 + (arg | arg_lsb));
358}
359
360/* POP_JUMP_FALSE(*) */
36143 {
362  extract opcode (8), arg_lsb (8);
363  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
364}
365
366/* PUSH_INTEGER(*) */
36744 {
368  extract opcode (8), arg_lsb (8);
369  dispatch PUSH_INTEGER (arg | arg_lsb);
370}
371
372/* PUSH_SPECIAL(*) */
37345 {
374  extract opcode (8), arg_lsb (8);
375  dispatch PUSH_SPECIAL (arg | arg_lsb);
376}
377
378/* PUSH_LIT_CONSTANT(*) */
37946 {
380  extract opcode (8), arg_lsb (8);
381  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
382}
383
384/* POP_INTO_NEW_STACKTOP(*) */
38547 {
386  extract opcode (8), arg_lsb (8);
387  dispatch POP_INTO_NEW_STACKTOP (arg | arg_lsb);
388}
389
390/* POP_STACK_TOP(*) */
39148 {
392  extract opcode (8), arg_lsb (8);
393  dispatch POP_STACK_TOP;
394}
395
396/* MAKE_DIRTY_BLOCK(*) */
39749 {
398  extract opcode (8), arg_lsb (8);
399  dispatch MAKE_DIRTY_BLOCK;
400}
401
402/* RETURN_METHOD_STACK_TOP(*) */
40350 {
404  extract opcode (8), arg_lsb (8);
405  dispatch RETURN_METHOD_STACK_TOP;
406}
407
408/* RETURN_CONTEXT_STACK_TOP(*) */
40951 {
410  extract opcode (8), arg_lsb (8);
411  dispatch RETURN_CONTEXT_STACK_TOP;
412}
413
414/* DUP_STACK_TOP(*) */
41552 {
416  extract opcode (8), arg_lsb (8);
417  dispatch DUP_STACK_TOP;
418}
419
420/* EXIT_INTERPRETER(*) */
42153 {
422  extract opcode (8), arg_lsb (8);
423  dispatch EXIT_INTERPRETER;
424}
425
426/* LINE_NUMBER_BYTECODE(*) */
42754 {
428  extract opcode (8), arg_lsb (8);
429  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
430}
431
432/* EXT_BYTE(*) */
43355 {
434  extract opcode (8), arg_lsb (8);
435  arg = (arg | arg_lsb) << 8;
436  continue;
437}
438
439/* PUSH_SELF(*) */
44056 {
441  extract opcode (8), arg_lsb (8);
442  dispatch PUSH_SELF;
443}
444
445/* invalid bytecode */
44657 {
447  extract opcode (8), arg_lsb (8);
448  dispatch INVALID (57, arg | arg_lsb);
449}
450
451/* invalid bytecode */
45258 {
453  extract opcode (8), arg_lsb (8);
454  dispatch INVALID (58, arg | arg_lsb);
455}
456
457/* invalid bytecode */
45859 {
459  extract opcode (8), arg_lsb (8);
460  dispatch INVALID (59, arg | arg_lsb);
461}
462
463/* invalid bytecode */
46460 {
465  extract opcode (8), arg_lsb (8);
466  dispatch INVALID (60, arg | arg_lsb);
467}
468
469/* invalid bytecode */
47061 {
471  extract opcode (8), arg_lsb (8);
472  dispatch INVALID (61, arg | arg_lsb);
473}
474
475/* invalid bytecode */
47662 {
477  extract opcode (8), arg_lsb (8);
478  dispatch INVALID (62, arg | arg_lsb);
479}
480
481/* invalid bytecode */
48263 {
483  extract opcode (8), arg_lsb (8);
484  dispatch INVALID (63, arg | arg_lsb);
485}
486
487/* EXT_BYTE(*)
488   SEND(1) */
48964 {
490  extract opcode (8), arg_lsb (8);
491  dispatch SEND (arg | arg_lsb, 0, 1);
492}
493
494/* EXT_BYTE(*)
495   SEND(0) */
49665 {
497  extract opcode (8), arg_lsb (8);
498  dispatch SEND (arg | arg_lsb, 0, 0);
499}
500
501/* PUSH_SELF(0)
502   RETURN_CONTEXT_STACK_TOP(*) */
50366 {
504  extract opcode (8), arg_lsb (8);
505  dispatch PUSH_SELF;
506  dispatch RETURN_CONTEXT_STACK_TOP;
507}
508
509/* LINE_NUMBER_BYTECODE(*)
510   PUSH_SELF(0) */
51167 {
512  extract opcode (8), arg_lsb (8);
513  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
514  dispatch PUSH_SELF;
515}
516
517/* LINE_NUMBER_BYTECODE(*)
518   POP_STACK_TOP(0) */
51968 {
520  extract opcode (8), arg_lsb (8);
521  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
522  dispatch POP_STACK_TOP;
523}
524
525/* LINE_NUMBER_BYTECODE(*)
526   PUSH_TEMPORARY_VARIABLE(0) */
52769 {
528  extract opcode (8), arg_lsb (8);
529  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
530  dispatch PUSH_TEMPORARY_VARIABLE (0);
531}
532
533/* PUSH_LIT_CONSTANT(*)
534   MAKE_DIRTY_BLOCK(0) */
53570 {
536  extract opcode (8), arg_lsb (8);
537  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
538  dispatch MAKE_DIRTY_BLOCK;
539}
540
541/* EXT_BYTE(*)
542   SEND(2) */
54371 {
544  extract opcode (8), arg_lsb (8);
545  dispatch SEND (arg | arg_lsb, 0, 2);
546}
547
548/* POP_STACK_TOP(0)
549   DUP_STACK_TOP(*) */
55072 {
551  extract opcode (8), arg_lsb (8);
552  dispatch POP_STACK_TOP;
553  dispatch DUP_STACK_TOP;
554}
555
556/* PUSH_TEMPORARY_VARIABLE(0)
557   SEND_IMMEDIATE(*) */
55873 {
559  extract opcode (8), arg_lsb (8);
560  dispatch PUSH_TEMPORARY_VARIABLE (0);
561  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
562}
563
564/* PUSH_SELF(0)
565   EXT_BYTE(*)
566   SEND(0) */
56774 {
568  extract opcode (8), arg_lsb (8);
569  dispatch PUSH_SELF;
570  dispatch SEND (arg | arg_lsb, 0, 0);
571}
572
573/* PUSH_SPECIAL(*)
574   RETURN_CONTEXT_STACK_TOP(0) */
57575 {
576  extract opcode (8), arg_lsb (8);
577  dispatch PUSH_SPECIAL (arg | arg_lsb);
578  dispatch RETURN_CONTEXT_STACK_TOP;
579}
580
581/* PUSH_SELF(0)
582   SEND_IMMEDIATE(*) */
58376 {
584  extract opcode (8), arg_lsb (8);
585  dispatch PUSH_SELF;
586  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
587}
588
589/* EXT_BYTE(*)
590   PUSH_OUTER_TEMP(1) */
59177 {
592  extract opcode (8), arg_lsb (8);
593  dispatch PUSH_OUTER_TEMP (arg | arg_lsb, 1);
594}
595
596/* STORE_TEMPORARY_VARIABLE(*)
597   POP_STACK_TOP(0) */
59878 {
599  extract opcode (8), arg_lsb (8);
600  dispatch STORE_TEMPORARY_VARIABLE (arg | arg_lsb);
601  dispatch POP_STACK_TOP;
602}
603
604/* PUSH_SELF(0)
605   PUSH_TEMPORARY_VARIABLE(*) */
60679 {
607  extract opcode (8), arg_lsb (8);
608  dispatch PUSH_SELF;
609  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
610}
611
612/* STORE_RECEIVER_VARIABLE(*)
613   PUSH_SELF(0)
614   RETURN_CONTEXT_STACK_TOP(0) */
61580 {
616  extract opcode (8), arg_lsb (8);
617  dispatch STORE_RECEIVER_VARIABLE (arg | arg_lsb);
618  dispatch PUSH_SELF;
619  dispatch RETURN_CONTEXT_STACK_TOP;
620}
621
622/* PUSH_INTEGER(*)
623   PLUS_SPECIAL(0) */
62481 {
625  extract opcode (8), arg_lsb (8);
626  dispatch PUSH_INTEGER (arg | arg_lsb);
627  dispatch SEND_ARITH (0);
628}
629
630/* LINE_NUMBER_BYTECODE(*)
631   PUSH_LIT_VARIABLE(0) */
63282 {
633  extract opcode (8), arg_lsb (8);
634  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
635  dispatch PUSH_LIT_VARIABLE (0);
636}
637
638/* PUSH_TEMPORARY_VARIABLE(0)
639   PUSH_TEMPORARY_VARIABLE(*) */
64083 {
641  extract opcode (8), arg_lsb (8);
642  dispatch PUSH_TEMPORARY_VARIABLE (0);
643  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
644}
645
646/* PUSH_TEMPORARY_VARIABLE(0)
647   SEND(*) */
64884 {
649  extract opcode (8), arg_lsb (8);
650  dispatch PUSH_TEMPORARY_VARIABLE (0);
651  dispatch SEND (arg >> 8, 0, arg_lsb);
652}
653
654/* LINE_NUMBER_BYTECODE(*)
655   PUSH_TEMPORARY_VARIABLE(1) */
65685 {
657  extract opcode (8), arg_lsb (8);
658  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
659  dispatch PUSH_TEMPORARY_VARIABLE (1);
660}
661
662/* IS_NIL_SPECIAL(0)
663   POP_JUMP_FALSE(*) */
66486 {
665  extract opcode (8), arg_lsb (8);
666  dispatch SEND_SPECIAL (4);
667  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
668}
669
670/* PUSH_INTEGER(*)
671   EQUAL_SPECIAL(0) */
67287 {
673  extract opcode (8), arg_lsb (8);
674  dispatch PUSH_INTEGER (arg | arg_lsb);
675  dispatch SEND_ARITH (6);
676}
677
678/* EXT_BYTE(*)
679   SEND(3) */
68088 {
681  extract opcode (8), arg_lsb (8);
682  dispatch SEND (arg | arg_lsb, 0, 3);
683}
684
685/* PUSH_TEMPORARY_VARIABLE(0)
686   EXT_BYTE(*)
687   SEND(1) */
68889 {
689  extract opcode (8), arg_lsb (8);
690  dispatch PUSH_TEMPORARY_VARIABLE (0);
691  dispatch SEND (arg | arg_lsb, 0, 1);
692}
693
694/* LINE_NUMBER_BYTECODE(*)
695   PUSH_SELF(0)
696   SEND(0) */
69790 {
698  extract opcode (8), arg_lsb (8);
699  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
700  dispatch PUSH_SELF;
701  dispatch SEND (0, 0, 0);
702}
703
704/* PUSH_TEMPORARY_VARIABLE(*)
705   RETURN_CONTEXT_STACK_TOP(0) */
70691 {
707  extract opcode (8), arg_lsb (8);
708  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
709  dispatch RETURN_CONTEXT_STACK_TOP;
710}
711
712/* PUSH_LIT_CONSTANT(*)
713   SEND_IMMEDIATE(36) */
71492 {
715  extract opcode (8), arg_lsb (8);
716  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
717  dispatch SEND_IMMEDIATE (36, 0);
718}
719
720/* SAME_OBJECT_SPECIAL(0)
721   POP_JUMP_FALSE(*) */
72293 {
723  extract opcode (8), arg_lsb (8);
724  dispatch SEND_SPECIAL (8);
725  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
726}
727
728/* PUSH_LIT_CONSTANT(*)
729   EXT_BYTE(1)
730   SEND(1) */
73194 {
732  extract opcode (8), arg_lsb (8);
733  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
734  dispatch SEND (1, 0, 1);
735}
736
737/* LINE_NUMBER_BYTECODE(*)
738   POP_STACK_TOP(0)
739   PUSH_SELF(0) */
74095 {
741  extract opcode (8), arg_lsb (8);
742  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
743  dispatch POP_STACK_TOP;
744  dispatch PUSH_SELF;
745}
746
747/* POP_STACK_TOP(0)
748   DUP_STACK_TOP(0)
749   LINE_NUMBER_BYTECODE(*) */
75096 {
751  extract opcode (8), arg_lsb (8);
752  dispatch POP_STACK_TOP;
753  dispatch DUP_STACK_TOP;
754  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
755}
756
757/* PUSH_TEMPORARY_VARIABLE(0)
758   EXT_BYTE(*)
759   SEND(0) */
76097 {
761  extract opcode (8), arg_lsb (8);
762  dispatch PUSH_TEMPORARY_VARIABLE (0);
763  dispatch SEND (arg | arg_lsb, 0, 0);
764}
765
766/* PUSH_TEMPORARY_VARIABLE(1)
767   SEND_IMMEDIATE(*) */
76898 {
769  extract opcode (8), arg_lsb (8);
770  dispatch PUSH_TEMPORARY_VARIABLE (1);
771  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
772}
773
774/* PUSH_LIT_CONSTANT(*)
775   EQUAL_SPECIAL(0) */
77699 {
777  extract opcode (8), arg_lsb (8);
778  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
779  dispatch SEND_ARITH (6);
780}
781
782/* PUSH_INTEGER(*)
783   MINUS_SPECIAL(0) */
784100 {
785  extract opcode (8), arg_lsb (8);
786  dispatch PUSH_INTEGER (arg | arg_lsb);
787  dispatch SEND_ARITH (1);
788}
789
790/* DUP_STACK_TOP(0)
791   POP_JUMP_FALSE(*) */
792101 {
793  extract opcode (8), arg_lsb (8);
794  dispatch DUP_STACK_TOP;
795  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
796}
797
798/* POP_STACK_TOP(0)
799   LINE_NUMBER_BYTECODE(*) */
800102 {
801  extract opcode (8), arg_lsb (8);
802  dispatch POP_STACK_TOP;
803  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
804}
805
806/* PUSH_INTEGER(*)
807   SEND_IMMEDIATE(32) */
808103 {
809  extract opcode (8), arg_lsb (8);
810  dispatch PUSH_INTEGER (arg | arg_lsb);
811  dispatch SEND_IMMEDIATE (32, 0);
812}
813
814/* PUSH_TEMPORARY_VARIABLE(*)
815   SIZE_SPECIAL(0) */
816104 {
817  extract opcode (8), arg_lsb (8);
818  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
819  dispatch SEND_SPECIAL (2);
820}
821
822/* PUSH_SELF(0)
823   SEND(*) */
824105 {
825  extract opcode (8), arg_lsb (8);
826  dispatch PUSH_SELF;
827  dispatch SEND (arg >> 8, 0, arg_lsb);
828}
829
830/* LINE_NUMBER_BYTECODE(*)
831   PUSH_TEMPORARY_VARIABLE(2) */
832106 {
833  extract opcode (8), arg_lsb (8);
834  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
835  dispatch PUSH_TEMPORARY_VARIABLE (2);
836}
837
838/* POP_STACK_TOP(0)
839   SEND_IMMEDIATE(*) */
840107 {
841  extract opcode (8), arg_lsb (8);
842  dispatch POP_STACK_TOP;
843  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
844}
845
846/* PUSH_TEMPORARY_VARIABLE(*)
847   PUSH_INTEGER(1)
848   PLUS_SPECIAL(0) */
849108 {
850  extract opcode (8), arg_lsb (8);
851  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
852  dispatch PUSH_INTEGER (1);
853  dispatch SEND_ARITH (0);
854}
855
856/* LINE_NUMBER_BYTECODE(*)
857   PUSH_RECEIVER_VARIABLE(0) */
858109 {
859  extract opcode (8), arg_lsb (8);
860  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
861  dispatch PUSH_RECEIVER_VARIABLE (0);
862}
863
864/* PUSH_LIT_CONSTANT(*)
865   SEND_IMMEDIATE(38) */
866110 {
867  extract opcode (8), arg_lsb (8);
868  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
869  dispatch SEND_IMMEDIATE (38, 0);
870}
871
872/* PUSH_INTEGER(*)
873   AT_SPECIAL(0) */
874111 {
875  extract opcode (8), arg_lsb (8);
876  dispatch PUSH_INTEGER (arg | arg_lsb);
877  dispatch SEND_SPECIAL (0);
878}
879
880/* LINE_NUMBER_BYTECODE(*)
881   PUSH_RECEIVER_VARIABLE(1) */
882112 {
883  extract opcode (8), arg_lsb (8);
884  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
885  dispatch PUSH_RECEIVER_VARIABLE (1);
886}
887
888/* PUSH_TEMPORARY_VARIABLE(0)
889   PUSH_LIT_CONSTANT(*) */
890113 {
891  extract opcode (8), arg_lsb (8);
892  dispatch PUSH_TEMPORARY_VARIABLE (0);
893  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
894}
895
896/* DUP_STACK_TOP(0)
897   POP_JUMP_TRUE(*) */
898114 {
899  extract opcode (8), arg_lsb (8);
900  dispatch DUP_STACK_TOP;
901  dispatch POP_JUMP_TRUE (IP - IP0 + (arg | arg_lsb));
902}
903
904/* PUSH_TEMPORARY_VARIABLE(*)
905   AT_SPECIAL(0) */
906115 {
907  extract opcode (8), arg_lsb (8);
908  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
909  dispatch SEND_SPECIAL (0);
910}
911
912/* PUSH_TEMPORARY_VARIABLE(2)
913   SEND_IMMEDIATE(*) */
914116 {
915  extract opcode (8), arg_lsb (8);
916  dispatch PUSH_TEMPORARY_VARIABLE (2);
917  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
918}
919
920/* PUSH_LIT_CONSTANT(*)
921   SEND_IMMEDIATE(49) */
922117 {
923  extract opcode (8), arg_lsb (8);
924  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
925  dispatch SEND_IMMEDIATE (49, 0);
926}
927
928/* STORE_TEMPORARY_VARIABLE(1)
929   LINE_NUMBER_BYTECODE(*)
930   POP_STACK_TOP(0) */
931118 {
932  extract opcode (8), arg_lsb (8);
933  dispatch STORE_TEMPORARY_VARIABLE (1);
934  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
935  dispatch POP_STACK_TOP;
936}
937
938/* PUSH_TEMPORARY_VARIABLE(1)
939   EXT_BYTE(*)
940   SEND(1) */
941119 {
942  extract opcode (8), arg_lsb (8);
943  dispatch PUSH_TEMPORARY_VARIABLE (1);
944  dispatch SEND (arg | arg_lsb, 0, 1);
945}
946
947/* STORE_RECEIVER_VARIABLE(*)
948   POP_STACK_TOP(0) */
949120 {
950  extract opcode (8), arg_lsb (8);
951  dispatch STORE_RECEIVER_VARIABLE (arg | arg_lsb);
952  dispatch POP_STACK_TOP;
953}
954
955/* EXT_BYTE(*)
956   STORE_OUTER_TEMP(1) */
957121 {
958  extract opcode (8), arg_lsb (8);
959  dispatch STORE_OUTER_TEMP (arg | arg_lsb, 1);
960}
961
962/* PUSH_INTEGER(*)
963   SEND_IMMEDIATE(96) */
964122 {
965  extract opcode (8), arg_lsb (8);
966  dispatch PUSH_INTEGER (arg | arg_lsb);
967  dispatch SEND_IMMEDIATE (96, 0);
968}
969
970/* POP_STACK_TOP(0)
971   PUSH_TEMPORARY_VARIABLE(*) */
972123 {
973  extract opcode (8), arg_lsb (8);
974  dispatch POP_STACK_TOP;
975  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
976}
977
978/* PUSH_RECEIVER_VARIABLE(*)
979   RETURN_CONTEXT_STACK_TOP(0) */
980124 {
981  extract opcode (8), arg_lsb (8);
982  dispatch PUSH_RECEIVER_VARIABLE (arg | arg_lsb);
983  dispatch RETURN_CONTEXT_STACK_TOP;
984}
985
986/* LINE_NUMBER_BYTECODE(*)
987   POP_STACK_TOP(0)
988   PUSH_TEMPORARY_VARIABLE(1) */
989125 {
990  extract opcode (8), arg_lsb (8);
991  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
992  dispatch POP_STACK_TOP;
993  dispatch PUSH_TEMPORARY_VARIABLE (1);
994}
995
996/* LINE_NUMBER_BYTECODE(*)
997   POP_STACK_TOP(0)
998   PUSH_TEMPORARY_VARIABLE(0) */
999126 {
1000  extract opcode (8), arg_lsb (8);
1001  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1002  dispatch POP_STACK_TOP;
1003  dispatch PUSH_TEMPORARY_VARIABLE (0);
1004}
1005
1006/* LINE_NUMBER_BYTECODE(*)
1007   PUSH_SELF(0)
1008   PUSH_LIT_CONSTANT(0) */
1009127 {
1010  extract opcode (8), arg_lsb (8);
1011  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1012  dispatch PUSH_SELF;
1013  dispatch PUSH_LIT_CONSTANT (0);
1014}
1015
1016/* PUSH_LIT_CONSTANT(*)
1017   RETURN_CONTEXT_STACK_TOP(0) */
1018128 {
1019  extract opcode (8), arg_lsb (8);
1020  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1021  dispatch RETURN_CONTEXT_STACK_TOP;
1022}
1023
1024/* PUSH_SELF(0)
1025   SIZE_SPECIAL(*) */
1026129 {
1027  extract opcode (8), arg_lsb (8);
1028  dispatch PUSH_SELF;
1029  dispatch SEND_SPECIAL (2);
1030}
1031
1032/* IS_NIL_SPECIAL(0)
1033   POP_JUMP_TRUE(*) */
1034130 {
1035  extract opcode (8), arg_lsb (8);
1036  dispatch SEND_SPECIAL (4);
1037  dispatch POP_JUMP_TRUE (IP - IP0 + (arg | arg_lsb));
1038}
1039
1040/* PUSH_TEMPORARY_VARIABLE(*)
1041   AT_PUT_SPECIAL(0) */
1042131 {
1043  extract opcode (8), arg_lsb (8);
1044  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1045  dispatch SEND_SPECIAL (1);
1046}
1047
1048/* LINE_NUMBER_BYTECODE(*)
1049   PUSH_LIT_VARIABLE(1) */
1050132 {
1051  extract opcode (8), arg_lsb (8);
1052  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1053  dispatch PUSH_LIT_VARIABLE (1);
1054}
1055
1056/* PUSH_TEMPORARY_VARIABLE(*)
1057   PLUS_SPECIAL(0) */
1058133 {
1059  extract opcode (8), arg_lsb (8);
1060  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1061  dispatch SEND_ARITH (0);
1062}
1063
1064/* POP_STACK_TOP(0)
1065   JUMP_BACK(*) */
1066134 {
1067  extract opcode (8), arg_lsb (8);
1068  dispatch POP_STACK_TOP;
1069  dispatch JUMP (IP - IP0 - (arg | arg_lsb));
1070}
1071
1072/* POP_STACK_TOP(0)
1073   PUSH_LIT_VARIABLE(*) */
1074135 {
1075  extract opcode (8), arg_lsb (8);
1076  dispatch POP_STACK_TOP;
1077  dispatch PUSH_LIT_VARIABLE (arg | arg_lsb);
1078}
1079
1080/* PUSH_INTEGER(1)
1081   STORE_TEMPORARY_VARIABLE(*) */
1082136 {
1083  extract opcode (8), arg_lsb (8);
1084  dispatch PUSH_INTEGER (1);
1085  dispatch STORE_TEMPORARY_VARIABLE (arg | arg_lsb);
1086}
1087
1088/* PUSH_LIT_CONSTANT(*)
1089   EXT_BYTE(2)
1090   SEND(1) */
1091137 {
1092  extract opcode (8), arg_lsb (8);
1093  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1094  dispatch SEND (2, 0, 1);
1095}
1096
1097/* LINE_NUMBER_BYTECODE(*)
1098   PUSH_TEMPORARY_VARIABLE(3) */
1099138 {
1100  extract opcode (8), arg_lsb (8);
1101  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1102  dispatch PUSH_TEMPORARY_VARIABLE (3);
1103}
1104
1105/* LINE_NUMBER_BYTECODE(*)
1106   PUSH_OUTER_TEMP(1) */
1107139 {
1108  extract opcode (8), arg_lsb (8);
1109  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1110  dispatch PUSH_OUTER_TEMP (0, 1);
1111}
1112
1113/* PUSH_RECEIVER_VARIABLE(*)
1114   SEND(0) */
1115140 {
1116  extract opcode (8), arg_lsb (8);
1117  dispatch PUSH_RECEIVER_VARIABLE (arg | arg_lsb);
1118  dispatch SEND (0, 0, 0);
1119}
1120
1121/* PUSH_INTEGER(*)
1122   GREATER_THAN_SPECIAL(0) */
1123141 {
1124  extract opcode (8), arg_lsb (8);
1125  dispatch PUSH_INTEGER (arg | arg_lsb);
1126  dispatch SEND_ARITH (3);
1127}
1128
1129/* PUSH_TEMPORARY_VARIABLE(*)
1130   VALUE_SPECIAL(0) */
1131142 {
1132  extract opcode (8), arg_lsb (8);
1133  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1134  dispatch SEND_SPECIAL (6);
1135}
1136
1137/* PUSH_TEMPORARY_VARIABLE(*)
1138   MINUS_SPECIAL(0) */
1139143 {
1140  extract opcode (8), arg_lsb (8);
1141  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1142  dispatch SEND_ARITH (1);
1143}
1144
1145/* PUSH_LIT_CONSTANT(*)
1146   EXT_BYTE(3)
1147   SEND(1) */
1148144 {
1149  extract opcode (8), arg_lsb (8);
1150  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1151  dispatch SEND (3, 0, 1);
1152}
1153
1154/* PUSH_SPECIAL(0)
1155   SAME_OBJECT_SPECIAL(0)
1156   POP_JUMP_FALSE(*) */
1157145 {
1158  extract opcode (8), arg_lsb (8);
1159  dispatch PUSH_SPECIAL (0);
1160  dispatch SEND_SPECIAL (8);
1161  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
1162}
1163
1164/* STORE_TEMPORARY_VARIABLE(2)
1165   LINE_NUMBER_BYTECODE(*)
1166   POP_STACK_TOP(0) */
1167146 {
1168  extract opcode (8), arg_lsb (8);
1169  dispatch STORE_TEMPORARY_VARIABLE (2);
1170  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1171  dispatch POP_STACK_TOP;
1172}
1173
1174/* SAME_OBJECT_SPECIAL(0)
1175   POP_JUMP_TRUE(*) */
1176147 {
1177  extract opcode (8), arg_lsb (8);
1178  dispatch SEND_SPECIAL (8);
1179  dispatch POP_JUMP_TRUE (IP - IP0 + (arg | arg_lsb));
1180}
1181
1182/* PUSH_INTEGER(*)
1183   TIMES_SPECIAL(0) */
1184148 {
1185  extract opcode (8), arg_lsb (8);
1186  dispatch PUSH_INTEGER (arg | arg_lsb);
1187  dispatch SEND_ARITH (8);
1188}
1189
1190/* LINE_NUMBER_BYTECODE(*)
1191   PUSH_RECEIVER_VARIABLE(2) */
1192149 {
1193  extract opcode (8), arg_lsb (8);
1194  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1195  dispatch PUSH_RECEIVER_VARIABLE (2);
1196}
1197
1198/* PUSH_INTEGER(*)
1199   LESS_THAN_SPECIAL(0) */
1200150 {
1201  extract opcode (8), arg_lsb (8);
1202  dispatch PUSH_INTEGER (arg | arg_lsb);
1203  dispatch SEND_ARITH (2);
1204}
1205
1206/* PUSH_LIT_CONSTANT(*)
1207   AT_PUT_SPECIAL(0) */
1208151 {
1209  extract opcode (8), arg_lsb (8);
1210  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1211  dispatch SEND_SPECIAL (1);
1212}
1213
1214/* EXT_BYTE(*)
1215   PUSH_OUTER_TEMP(2) */
1216152 {
1217  extract opcode (8), arg_lsb (8);
1218  dispatch PUSH_OUTER_TEMP (arg | arg_lsb, 2);
1219}
1220
1221/* LINE_NUMBER_BYTECODE(*)
1222   PUSH_SELF(0)
1223   PUSH_TEMPORARY_VARIABLE(0)
1224   SEND(1) */
1225153 {
1226  extract opcode (8), arg_lsb (8);
1227  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1228  dispatch PUSH_SELF;
1229  dispatch PUSH_TEMPORARY_VARIABLE (0);
1230  dispatch SEND (0, 0, 1);
1231}
1232
1233/* PUSH_SELF(0)
1234   PUSH_TEMPORARY_VARIABLE(0)
1235   EXT_BYTE(*)
1236   SEND(1) */
1237154 {
1238  extract opcode (8), arg_lsb (8);
1239  dispatch PUSH_SELF;
1240  dispatch PUSH_TEMPORARY_VARIABLE (0);
1241  dispatch SEND (arg | arg_lsb, 0, 1);
1242}
1243
1244/* LINE_NUMBER_BYTECODE(*)
1245   PUSH_SELF(0)
1246   SEND_IMMEDIATE(40) */
1247155 {
1248  extract opcode (8), arg_lsb (8);
1249  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1250  dispatch PUSH_SELF;
1251  dispatch SEND_IMMEDIATE (40, 0);
1252}
1253
1254/* PUSH_TEMPORARY_VARIABLE(*)
1255   PUSH_TEMPORARY_VARIABLE(3) */
1256156 {
1257  extract opcode (8), arg_lsb (8);
1258  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1259  dispatch PUSH_TEMPORARY_VARIABLE (3);
1260}
1261
1262/* STORE_TEMPORARY_VARIABLE(1)
1263   LINE_NUMBER_BYTECODE(*) */
1264157 {
1265  extract opcode (8), arg_lsb (8);
1266  dispatch STORE_TEMPORARY_VARIABLE (1);
1267  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1268}
1269
1270/* LINE_NUMBER_BYTECODE(*)
1271   PUSH_TEMPORARY_VARIABLE(0)
1272   SEND(0) */
1273158 {
1274  extract opcode (8), arg_lsb (8);
1275  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1276  dispatch PUSH_TEMPORARY_VARIABLE (0);
1277  dispatch SEND (0, 0, 0);
1278}
1279
1280/* PUSH_INTEGER(*)
1281   BIT_AND_SPECIAL(0) */
1282159 {
1283  extract opcode (8), arg_lsb (8);
1284  dispatch PUSH_INTEGER (arg | arg_lsb);
1285  dispatch SEND_ARITH (14);
1286}
1287
1288/* PUSH_TEMPORARY_VARIABLE(2)
1289   EXT_BYTE(*)
1290   SEND(0) */
1291160 {
1292  extract opcode (8), arg_lsb (8);
1293  dispatch PUSH_TEMPORARY_VARIABLE (2);
1294  dispatch SEND (arg | arg_lsb, 0, 0);
1295}
1296
1297/* PUSH_TEMPORARY_VARIABLE(0)
1298   PUSH_TEMPORARY_VARIABLE(1)
1299   SEND(*) */
1300161 {
1301  extract opcode (8), arg_lsb (8);
1302  dispatch PUSH_TEMPORARY_VARIABLE (0);
1303  dispatch PUSH_TEMPORARY_VARIABLE (1);
1304  dispatch SEND (arg >> 8, 0, arg_lsb);
1305}
1306
1307/* LINE_NUMBER_BYTECODE(*)
1308   PUSH_SELF(0)
1309   PUSH_TEMPORARY_VARIABLE(0) */
1310162 {
1311  extract opcode (8), arg_lsb (8);
1312  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1313  dispatch PUSH_SELF;
1314  dispatch PUSH_TEMPORARY_VARIABLE (0);
1315}
1316
1317/* LINE_NUMBER_BYTECODE(*)
1318   PUSH_RECEIVER_VARIABLE(3) */
1319163 {
1320  extract opcode (8), arg_lsb (8);
1321  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1322  dispatch PUSH_RECEIVER_VARIABLE (3);
1323}
1324
1325/* PUSH_TEMPORARY_VARIABLE(2)
1326   EXT_BYTE(*)
1327   SEND(1) */
1328164 {
1329  extract opcode (8), arg_lsb (8);
1330  dispatch PUSH_TEMPORARY_VARIABLE (2);
1331  dispatch SEND (arg | arg_lsb, 0, 1);
1332}
1333
1334/* NOT_NIL_SPECIAL(0)
1335   POP_JUMP_FALSE(*) */
1336165 {
1337  extract opcode (8), arg_lsb (8);
1338  dispatch SEND_SPECIAL (5);
1339  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
1340}
1341
1342/* STORE_TEMPORARY_VARIABLE(2)
1343   LINE_NUMBER_BYTECODE(*) */
1344166 {
1345  extract opcode (8), arg_lsb (8);
1346  dispatch STORE_TEMPORARY_VARIABLE (2);
1347  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1348}
1349
1350/* STORE_TEMPORARY_VARIABLE(3)
1351   LINE_NUMBER_BYTECODE(*)
1352   POP_STACK_TOP(0) */
1353167 {
1354  extract opcode (8), arg_lsb (8);
1355  dispatch STORE_TEMPORARY_VARIABLE (3);
1356  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1357  dispatch POP_STACK_TOP;
1358}
1359
1360/* PUSH_LIT_CONSTANT(1)
1361   SEND_IMMEDIATE(*) */
1362168 {
1363  extract opcode (8), arg_lsb (8);
1364  dispatch PUSH_LIT_CONSTANT (1);
1365  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1366}
1367
1368/* PUSH_TEMPORARY_VARIABLE(*)
1369   EQUAL_SPECIAL(0) */
1370169 {
1371  extract opcode (8), arg_lsb (8);
1372  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1373  dispatch SEND_ARITH (6);
1374}
1375
1376/* POP_STACK_TOP(0)
1377   DUP_STACK_TOP(0)
1378   PUSH_TEMPORARY_VARIABLE(*)
1379   PUSH_INTEGER(1)
1380   PLUS_SPECIAL(0) */
1381170 {
1382  extract opcode (8), arg_lsb (8);
1383  dispatch POP_STACK_TOP;
1384  dispatch DUP_STACK_TOP;
1385  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1386  dispatch PUSH_INTEGER (1);
1387  dispatch SEND_ARITH (0);
1388}
1389
1390/* PUSH_SELF(0)
1391   EXT_BYTE(*)
1392   SEND(1) */
1393171 {
1394  extract opcode (8), arg_lsb (8);
1395  dispatch PUSH_SELF;
1396  dispatch SEND (arg | arg_lsb, 0, 1);
1397}
1398
1399/* STORE_TEMPORARY_VARIABLE(0)
1400   LINE_NUMBER_BYTECODE(*)
1401   POP_STACK_TOP(0) */
1402172 {
1403  extract opcode (8), arg_lsb (8);
1404  dispatch STORE_TEMPORARY_VARIABLE (0);
1405  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1406  dispatch POP_STACK_TOP;
1407}
1408
1409/* DUP_STACK_TOP(0)
1410   LINE_NUMBER_BYTECODE(*) */
1411173 {
1412  extract opcode (8), arg_lsb (8);
1413  dispatch DUP_STACK_TOP;
1414  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1415}
1416
1417/* PUSH_SELF(0)
1418   PUSH_LIT_CONSTANT(*)
1419   SEND_IMMEDIATE(49) */
1420174 {
1421  extract opcode (8), arg_lsb (8);
1422  dispatch PUSH_SELF;
1423  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1424  dispatch SEND_IMMEDIATE (49, 0);
1425}
1426
1427/* POP_STACK_TOP(0)
1428   PUSH_RECEIVER_VARIABLE(*) */
1429175 {
1430  extract opcode (8), arg_lsb (8);
1431  dispatch POP_STACK_TOP;
1432  dispatch PUSH_RECEIVER_VARIABLE (arg | arg_lsb);
1433}
1434
1435/* LINE_NUMBER_BYTECODE(*)
1436   PUSH_SELF(0)
1437   SEND_IMMEDIATE(84) */
1438176 {
1439  extract opcode (8), arg_lsb (8);
1440  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1441  dispatch PUSH_SELF;
1442  dispatch SEND_IMMEDIATE (84, 0);
1443}
1444
1445/* LINE_NUMBER_BYTECODE(*)
1446   PUSH_LIT_VARIABLE(2) */
1447177 {
1448  extract opcode (8), arg_lsb (8);
1449  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1450  dispatch PUSH_LIT_VARIABLE (2);
1451}
1452
1453/* PUSH_LIT_CONSTANT(*)
1454   MAKE_DIRTY_BLOCK(0)
1455   EXT_BYTE(3)
1456   SEND(1) */
1457178 {
1458  extract opcode (8), arg_lsb (8);
1459  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1460  dispatch MAKE_DIRTY_BLOCK;
1461  dispatch SEND (3, 0, 1);
1462}
1463
1464/* LINE_NUMBER_BYTECODE(*)
1465   PUSH_LIT_CONSTANT(0) */
1466179 {
1467  extract opcode (8), arg_lsb (8);
1468  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1469  dispatch PUSH_LIT_CONSTANT (0);
1470}
1471
1472/* DUP_STACK_TOP(0)
1473   PUSH_LIT_CONSTANT(*)
1474   SEND_IMMEDIATE(36) */
1475180 {
1476  extract opcode (8), arg_lsb (8);
1477  dispatch DUP_STACK_TOP;
1478  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1479  dispatch SEND_IMMEDIATE (36, 0);
1480}
1481
1482/* LINE_NUMBER_BYTECODE(*)
1483   EXT_BYTE(1)
1484   PUSH_OUTER_TEMP(1) */
1485181 {
1486  extract opcode (8), arg_lsb (8);
1487  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1488  dispatch PUSH_OUTER_TEMP (1, 1);
1489}
1490
1491/* PUSH_INTEGER(*)
1492   INTEGER_DIVIDE_SPECIAL(0) */
1493182 {
1494  extract opcode (8), arg_lsb (8);
1495  dispatch PUSH_INTEGER (arg | arg_lsb);
1496  dispatch SEND_ARITH (13);
1497}
1498
1499/* PUSH_LIT_CONSTANT(1)
1500   MAKE_DIRTY_BLOCK(0)
1501   SEND_IMMEDIATE(*) */
1502183 {
1503  extract opcode (8), arg_lsb (8);
1504  dispatch PUSH_LIT_CONSTANT (1);
1505  dispatch MAKE_DIRTY_BLOCK;
1506  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1507}
1508
1509/* PUSH_TEMPORARY_VARIABLE(3)
1510   SEND_IMMEDIATE(*) */
1511184 {
1512  extract opcode (8), arg_lsb (8);
1513  dispatch PUSH_TEMPORARY_VARIABLE (3);
1514  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1515}
1516
1517/* LINE_NUMBER_BYTECODE(*)
1518   PUSH_SPECIAL(0)
1519   RETURN_CONTEXT_STACK_TOP(0) */
1520185 {
1521  extract opcode (8), arg_lsb (8);
1522  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1523  dispatch PUSH_SPECIAL (0);
1524  dispatch RETURN_CONTEXT_STACK_TOP;
1525}
1526
1527/* LINE_NUMBER_BYTECODE(*)
1528   PUSH_RECEIVER_VARIABLE(5) */
1529186 {
1530  extract opcode (8), arg_lsb (8);
1531  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1532  dispatch PUSH_RECEIVER_VARIABLE (5);
1533}
1534
1535/* PUSH_LIT_CONSTANT(*)
1536   MAKE_DIRTY_BLOCK(0)
1537   EXT_BYTE(2)
1538   SEND(1) */
1539187 {
1540  extract opcode (8), arg_lsb (8);
1541  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1542  dispatch MAKE_DIRTY_BLOCK;
1543  dispatch SEND (2, 0, 1);
1544}
1545
1546/* PUSH_TEMPORARY_VARIABLE(*)
1547   VALUE_COLON_SPECIAL(0) */
1548188 {
1549  extract opcode (8), arg_lsb (8);
1550  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1551  dispatch SEND_SPECIAL (7);
1552}
1553
1554/* PUSH_INTEGER(*)
1555   RETURN_CONTEXT_STACK_TOP(0) */
1556189 {
1557  extract opcode (8), arg_lsb (8);
1558  dispatch PUSH_INTEGER (arg | arg_lsb);
1559  dispatch RETURN_CONTEXT_STACK_TOP;
1560}
1561
1562/* PUSH_TEMPORARY_VARIABLE(0)
1563   EXT_BYTE(*)
1564   SEND(2) */
1565190 {
1566  extract opcode (8), arg_lsb (8);
1567  dispatch PUSH_TEMPORARY_VARIABLE (0);
1568  dispatch SEND (arg | arg_lsb, 0, 2);
1569}
1570
1571/* PUSH_TEMPORARY_VARIABLE(*)
1572   PUSH_INTEGER(1)
1573   MINUS_SPECIAL(0) */
1574191 {
1575  extract opcode (8), arg_lsb (8);
1576  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1577  dispatch PUSH_INTEGER (1);
1578  dispatch SEND_ARITH (1);
1579}
1580
1581/* PUSH_SELF(0)
1582   PUSH_LIT_CONSTANT(*) */
1583192 {
1584  extract opcode (8), arg_lsb (8);
1585  dispatch PUSH_SELF;
1586  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1587}
1588
1589/* LINE_NUMBER_BYTECODE(*)
1590   PUSH_RECEIVER_VARIABLE(4) */
1591193 {
1592  extract opcode (8), arg_lsb (8);
1593  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1594  dispatch PUSH_RECEIVER_VARIABLE (4);
1595}
1596
1597/* PUSH_OUTER_TEMP(1)
1598   SEND_IMMEDIATE(*) */
1599194 {
1600  extract opcode (8), arg_lsb (8);
1601  dispatch PUSH_OUTER_TEMP (0, 1);
1602  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1603}
1604
1605/* LINE_NUMBER_BYTECODE(*)
1606   PUSH_SELF(0)
1607   EXT_BYTE(1)
1608   SEND(0) */
1609195 {
1610  extract opcode (8), arg_lsb (8);
1611  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1612  dispatch PUSH_SELF;
1613  dispatch SEND (1, 0, 0);
1614}
1615
1616/* PUSH_OUTER_TEMP(1)
1617   EXT_BYTE(*)
1618   SEND(1) */
1619196 {
1620  extract opcode (8), arg_lsb (8);
1621  dispatch PUSH_OUTER_TEMP (0, 1);
1622  dispatch SEND (arg | arg_lsb, 0, 1);
1623}
1624
1625/* PUSH_TEMPORARY_VARIABLE(4)
1626   SEND_IMMEDIATE(*) */
1627197 {
1628  extract opcode (8), arg_lsb (8);
1629  dispatch PUSH_TEMPORARY_VARIABLE (4);
1630  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1631}
1632
1633/* PUSH_INTEGER(*)
1634   SEND_IMMEDIATE(41) */
1635198 {
1636  extract opcode (8), arg_lsb (8);
1637  dispatch PUSH_INTEGER (arg | arg_lsb);
1638  dispatch SEND_IMMEDIATE (41, 0);
1639}
1640
1641/* EXT_BYTE(*)
1642   SEND(4) */
1643199 {
1644  extract opcode (8), arg_lsb (8);
1645  dispatch SEND (arg | arg_lsb, 0, 4);
1646}
1647
1648/* PUSH_TEMPORARY_VARIABLE(*)
1649   PUSH_TEMPORARY_VARIABLE(2) */
1650200 {
1651  extract opcode (8), arg_lsb (8);
1652  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1653  dispatch PUSH_TEMPORARY_VARIABLE (2);
1654}
1655
1656/* PUSH_SELF(0)
1657   CLASS_SPECIAL(*) */
1658201 {
1659  extract opcode (8), arg_lsb (8);
1660  dispatch PUSH_SELF;
1661  dispatch SEND_SPECIAL (3);
1662}
1663
1664/* PUSH_TEMPORARY_VARIABLE(1)
1665   SEND(*) */
1666202 {
1667  extract opcode (8), arg_lsb (8);
1668  dispatch PUSH_TEMPORARY_VARIABLE (1);
1669  dispatch SEND (arg >> 8, 0, arg_lsb);
1670}
1671
1672/* PUSH_SELF(0)
1673   PUSH_TEMPORARY_VARIABLE(1)
1674   EXT_BYTE(*)
1675   SEND(1) */
1676203 {
1677  extract opcode (8), arg_lsb (8);
1678  dispatch PUSH_SELF;
1679  dispatch PUSH_TEMPORARY_VARIABLE (1);
1680  dispatch SEND (arg | arg_lsb, 0, 1);
1681}
1682
1683/* PUSH_LIT_CONSTANT(*)
1684   EXT_BYTE(4)
1685   SEND(1) */
1686204 {
1687  extract opcode (8), arg_lsb (8);
1688  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1689  dispatch SEND (4, 0, 1);
1690}
1691
1692/* PUSH_INTEGER(*)
1693   SEND(1) */
1694205 {
1695  extract opcode (8), arg_lsb (8);
1696  dispatch PUSH_INTEGER (arg | arg_lsb);
1697  dispatch SEND (0, 0, 1);
1698}
1699
1700/* PUSH_RECEIVER_VARIABLE(*)
1701   SIZE_SPECIAL(0) */
1702206 {
1703  extract opcode (8), arg_lsb (8);
1704  dispatch PUSH_RECEIVER_VARIABLE (arg | arg_lsb);
1705  dispatch SEND_SPECIAL (2);
1706}
1707
1708/* PUSH_TEMPORARY_VARIABLE(1)
1709   EXT_BYTE(*)
1710   SEND(2) */
1711207 {
1712  extract opcode (8), arg_lsb (8);
1713  dispatch PUSH_TEMPORARY_VARIABLE (1);
1714  dispatch SEND (arg | arg_lsb, 0, 2);
1715}
1716
1717/* PUSH_TEMPORARY_VARIABLE(0)
1718   PUSH_TEMPORARY_VARIABLE(1)
1719   EXT_BYTE(*)
1720   SEND(2) */
1721208 {
1722  extract opcode (8), arg_lsb (8);
1723  dispatch PUSH_TEMPORARY_VARIABLE (0);
1724  dispatch PUSH_TEMPORARY_VARIABLE (1);
1725  dispatch SEND (arg | arg_lsb, 0, 2);
1726}
1727
1728/* PUSH_TEMPORARY_VARIABLE(*)
1729   POP_INTO_NEW_STACKTOP(0) */
1730209 {
1731  extract opcode (8), arg_lsb (8);
1732  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1733  dispatch POP_INTO_NEW_STACKTOP (0);
1734}
1735
1736/* PUSH_LIT_CONSTANT(*)
1737   MAKE_DIRTY_BLOCK(0)
1738   EXT_BYTE(5)
1739   SEND(1) */
1740210 {
1741  extract opcode (8), arg_lsb (8);
1742  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1743  dispatch MAKE_DIRTY_BLOCK;
1744  dispatch SEND (5, 0, 1);
1745}
1746
1747/* EXT_BYTE(*)
1748   SEND_SUPER(1) */
1749211 {
1750  extract opcode (8), arg_lsb (8);
1751  dispatch SEND (arg | arg_lsb, 1, 1);
1752}
1753
1754/* PUSH_LIT_CONSTANT(*)
1755   MAKE_DIRTY_BLOCK(0)
1756   EXT_BYTE(4)
1757   SEND(1) */
1758212 {
1759  extract opcode (8), arg_lsb (8);
1760  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1761  dispatch MAKE_DIRTY_BLOCK;
1762  dispatch SEND (4, 0, 1);
1763}
1764
1765/* PUSH_RECEIVER_VARIABLE(1)
1766   SEND_IMMEDIATE(*) */
1767213 {
1768  extract opcode (8), arg_lsb (8);
1769  dispatch PUSH_RECEIVER_VARIABLE (1);
1770  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1771}
1772
1773/* EXT_BYTE(*)
1774   STORE_OUTER_TEMP(1)
1775   RETURN_CONTEXT_STACK_TOP(0) */
1776214 {
1777  extract opcode (8), arg_lsb (8);
1778  dispatch STORE_OUTER_TEMP (arg | arg_lsb, 1);
1779  dispatch RETURN_CONTEXT_STACK_TOP;
1780}
1781
1782/* POP_STACK_TOP(0)
1783   LINE_NUMBER_BYTECODE(*)
1784   SEND_IMMEDIATE(37) */
1785215 {
1786  extract opcode (8), arg_lsb (8);
1787  dispatch POP_STACK_TOP;
1788  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1789  dispatch SEND_IMMEDIATE (37, 0);
1790}
1791
1792/* LINE_NUMBER_BYTECODE(*)
1793   PUSH_SELF(0)
1794   CLASS_SPECIAL(0) */
1795216 {
1796  extract opcode (8), arg_lsb (8);
1797  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1798  dispatch PUSH_SELF;
1799  dispatch SEND_SPECIAL (3);
1800}
1801
1802/* PUSH_TEMPORARY_VARIABLE(1)
1803   EXT_BYTE(*)
1804   SEND(0) */
1805217 {
1806  extract opcode (8), arg_lsb (8);
1807  dispatch PUSH_TEMPORARY_VARIABLE (1);
1808  dispatch SEND (arg | arg_lsb, 0, 0);
1809}
1810
1811/* LINE_NUMBER_BYTECODE(*)
1812   PUSH_SELF(0)
1813   SEND_IMMEDIATE(130) */
1814218 {
1815  extract opcode (8), arg_lsb (8);
1816  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1817  dispatch PUSH_SELF;
1818  dispatch SEND_IMMEDIATE (130, 0);
1819}
1820
1821/* PUSH_RECEIVER_VARIABLE(0)
1822   SEND_IMMEDIATE(*) */
1823219 {
1824  extract opcode (8), arg_lsb (8);
1825  dispatch PUSH_RECEIVER_VARIABLE (0);
1826  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1827}
1828
1829/* PUSH_TEMPORARY_VARIABLE(0)
1830   PUSH_LIT_VARIABLE(*) */
1831220 {
1832  extract opcode (8), arg_lsb (8);
1833  dispatch PUSH_TEMPORARY_VARIABLE (0);
1834  dispatch PUSH_LIT_VARIABLE (arg | arg_lsb);
1835}
1836
1837/* STORE_TEMPORARY_VARIABLE(0)
1838   LINE_NUMBER_BYTECODE(*) */
1839221 {
1840  extract opcode (8), arg_lsb (8);
1841  dispatch STORE_TEMPORARY_VARIABLE (0);
1842  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1843}
1844
1845/* PUSH_RECEIVER_VARIABLE(2)
1846   SEND_IMMEDIATE(*) */
1847222 {
1848  extract opcode (8), arg_lsb (8);
1849  dispatch PUSH_RECEIVER_VARIABLE (2);
1850  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1851}
1852
1853/* LINE_NUMBER_BYTECODE(*)
1854   PUSH_SELF(0)
1855   EXT_BYTE(2)
1856   SEND(0) */
1857223 {
1858  extract opcode (8), arg_lsb (8);
1859  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1860  dispatch PUSH_SELF;
1861  dispatch SEND (2, 0, 0);
1862}
1863
1864/* LINE_NUMBER_BYTECODE(*)
1865   POP_STACK_TOP(0)
1866   PUSH_TEMPORARY_VARIABLE(2) */
1867224 {
1868  extract opcode (8), arg_lsb (8);
1869  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1870  dispatch POP_STACK_TOP;
1871  dispatch PUSH_TEMPORARY_VARIABLE (2);
1872}
1873
1874/* PUSH_LIT_CONSTANT(*)
1875   MAKE_DIRTY_BLOCK(0)
1876   EXT_BYTE(6)
1877   SEND(1) */
1878225 {
1879  extract opcode (8), arg_lsb (8);
1880  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1881  dispatch MAKE_DIRTY_BLOCK;
1882  dispatch SEND (6, 0, 1);
1883}
1884
1885/* PUSH_SPECIAL(*)
1886   RETURN_METHOD_STACK_TOP(0) */
1887226 {
1888  extract opcode (8), arg_lsb (8);
1889  dispatch PUSH_SPECIAL (arg | arg_lsb);
1890  dispatch RETURN_METHOD_STACK_TOP;
1891}
1892
1893/* PUSH_INTEGER(*)
1894   GREATER_EQUAL_SPECIAL(0) */
1895227 {
1896  extract opcode (8), arg_lsb (8);
1897  dispatch PUSH_INTEGER (arg | arg_lsb);
1898  dispatch SEND_ARITH (5);
1899}
1900
1901/* LINE_NUMBER_BYTECODE(*)
1902   POP_STACK_TOP(0)
1903   PUSH_RECEIVER_VARIABLE(1) */
1904228 {
1905  extract opcode (8), arg_lsb (8);
1906  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1907  dispatch POP_STACK_TOP;
1908  dispatch PUSH_RECEIVER_VARIABLE (1);
1909}
1910
1911/* LINE_NUMBER_BYTECODE(*)
1912   PUSH_LIT_VARIABLE(3) */
1913229 {
1914  extract opcode (8), arg_lsb (8);
1915  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1916  dispatch PUSH_LIT_VARIABLE (3);
1917}
1918
1919/* PUSH_LIT_CONSTANT(2)
1920   SEND_IMMEDIATE(*) */
1921230 {
1922  extract opcode (8), arg_lsb (8);
1923  dispatch PUSH_LIT_CONSTANT (2);
1924  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
1925}
1926
1927/* EXT_BYTE(*)
1928   SEND_SUPER(0) */
1929231 {
1930  extract opcode (8), arg_lsb (8);
1931  dispatch SEND (arg | arg_lsb, 1, 0);
1932}
1933
1934/* PUSH_SPECIAL(0)
1935   STORE_RECEIVER_VARIABLE(*) */
1936232 {
1937  extract opcode (8), arg_lsb (8);
1938  dispatch PUSH_SPECIAL (0);
1939  dispatch STORE_RECEIVER_VARIABLE (arg | arg_lsb);
1940}
1941
1942/* PUSH_SELF(0)
1943   PUSH_TEMPORARY_VARIABLE(*)
1944   SEND(1) */
1945233 {
1946  extract opcode (8), arg_lsb (8);
1947  dispatch PUSH_SELF;
1948  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
1949  dispatch SEND (0, 0, 1);
1950}
1951
1952/* LINE_NUMBER_BYTECODE(*)
1953   POP_STACK_TOP(0)
1954   PUSH_TEMPORARY_VARIABLE(0)
1955   RETURN_CONTEXT_STACK_TOP(0) */
1956234 {
1957  extract opcode (8), arg_lsb (8);
1958  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1959  dispatch POP_STACK_TOP;
1960  dispatch PUSH_TEMPORARY_VARIABLE (0);
1961  dispatch RETURN_CONTEXT_STACK_TOP;
1962}
1963
1964/* PUSH_LIT_CONSTANT(*)
1965   SAME_OBJECT_SPECIAL(0) */
1966235 {
1967  extract opcode (8), arg_lsb (8);
1968  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1969  dispatch SEND_SPECIAL (8);
1970}
1971
1972/* PUSH_LIT_CONSTANT(*)
1973   MAKE_DIRTY_BLOCK(0)
1974   EXT_BYTE(1)
1975   SEND(1) */
1976236 {
1977  extract opcode (8), arg_lsb (8);
1978  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
1979  dispatch MAKE_DIRTY_BLOCK;
1980  dispatch SEND (1, 0, 1);
1981}
1982
1983/* LINE_NUMBER_BYTECODE(*)
1984   POP_STACK_TOP(0)
1985   PUSH_TEMPORARY_VARIABLE(3) */
1986237 {
1987  extract opcode (8), arg_lsb (8);
1988  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
1989  dispatch POP_STACK_TOP;
1990  dispatch PUSH_TEMPORARY_VARIABLE (3);
1991}
1992
1993/* POP_STACK_TOP(0)
1994   DUP_STACK_TOP(0)
1995   SEND_IMMEDIATE(*) */
1996238 {
1997  extract opcode (8), arg_lsb (8);
1998  dispatch POP_STACK_TOP;
1999  dispatch DUP_STACK_TOP;
2000  dispatch SEND_IMMEDIATE (arg | arg_lsb, 0);
2001}
2002
2003/* PUSH_LIT_CONSTANT(*)
2004   PUSH_TEMPORARY_VARIABLE(0)
2005   AT_PUT_SPECIAL(0) */
2006239 {
2007  extract opcode (8), arg_lsb (8);
2008  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
2009  dispatch PUSH_TEMPORARY_VARIABLE (0);
2010  dispatch SEND_SPECIAL (1);
2011}
2012
2013/* DUP_STACK_TOP(0)
2014   PUSH_TEMPORARY_VARIABLE(*)
2015   PUSH_INTEGER(1)
2016   PLUS_SPECIAL(0) */
2017240 {
2018  extract opcode (8), arg_lsb (8);
2019  dispatch DUP_STACK_TOP;
2020  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
2021  dispatch PUSH_INTEGER (1);
2022  dispatch SEND_ARITH (0);
2023}
2024
2025/* LINE_NUMBER_BYTECODE(*)
2026   PUSH_TEMPORARY_VARIABLE(4) */
2027241 {
2028  extract opcode (8), arg_lsb (8);
2029  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2030  dispatch PUSH_TEMPORARY_VARIABLE (4);
2031}
2032
2033/* POP_STACK_TOP(0)
2034   LINE_NUMBER_BYTECODE(*)
2035   PUSH_LIT_VARIABLE(1) */
2036242 {
2037  extract opcode (8), arg_lsb (8);
2038  dispatch POP_STACK_TOP;
2039  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2040  dispatch PUSH_LIT_VARIABLE (1);
2041}
2042
2043/* DUP_STACK_TOP(0)
2044   PUSH_LIT_CONSTANT(*)
2045   EXT_BYTE(1)
2046   SEND(1) */
2047243 {
2048  extract opcode (8), arg_lsb (8);
2049  dispatch DUP_STACK_TOP;
2050  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
2051  dispatch SEND (1, 0, 1);
2052}
2053
2054/* POP_INTO_NEW_STACKTOP(1)
2055   EXT_BYTE(*)
2056   SEND(1) */
2057244 {
2058  extract opcode (8), arg_lsb (8);
2059  dispatch POP_INTO_NEW_STACKTOP (1);
2060  dispatch SEND (arg | arg_lsb, 0, 1);
2061}
2062
2063/* LINE_NUMBER_BYTECODE(*)
2064   POP_STACK_TOP(0)
2065   PUSH_TEMPORARY_VARIABLE(1)
2066   RETURN_CONTEXT_STACK_TOP(0) */
2067245 {
2068  extract opcode (8), arg_lsb (8);
2069  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2070  dispatch POP_STACK_TOP;
2071  dispatch PUSH_TEMPORARY_VARIABLE (1);
2072  dispatch RETURN_CONTEXT_STACK_TOP;
2073}
2074
2075/* STORE_TEMPORARY_VARIABLE(3)
2076   LINE_NUMBER_BYTECODE(*) */
2077246 {
2078  extract opcode (8), arg_lsb (8);
2079  dispatch STORE_TEMPORARY_VARIABLE (3);
2080  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2081}
2082
2083/* DUP_STACK_TOP(0)
2084   EXT_BYTE(*)
2085   SEND(0) */
2086247 {
2087  extract opcode (8), arg_lsb (8);
2088  dispatch DUP_STACK_TOP;
2089  dispatch SEND (arg | arg_lsb, 0, 0);
2090}
2091
2092/* STORE_RECEIVER_VARIABLE(*)
2093   RETURN_CONTEXT_STACK_TOP(0) */
2094248 {
2095  extract opcode (8), arg_lsb (8);
2096  dispatch STORE_RECEIVER_VARIABLE (arg | arg_lsb);
2097  dispatch RETURN_CONTEXT_STACK_TOP;
2098}
2099
2100/* LINE_NUMBER_BYTECODE(*)
2101   PUSH_SELF(0)
2102   EXT_BYTE(3)
2103   SEND(0) */
2104249 {
2105  extract opcode (8), arg_lsb (8);
2106  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2107  dispatch PUSH_SELF;
2108  dispatch SEND (3, 0, 0);
2109}
2110
2111/* NOT_NIL_SPECIAL(0)
2112   DUP_STACK_TOP(0)
2113   POP_JUMP_FALSE(*) */
2114250 {
2115  extract opcode (8), arg_lsb (8);
2116  dispatch SEND_SPECIAL (5);
2117  dispatch DUP_STACK_TOP;
2118  dispatch POP_JUMP_FALSE (IP - IP0 + (arg | arg_lsb));
2119}
2120
2121/* DUP_STACK_TOP(0)
2122   PUSH_LIT_CONSTANT(*) */
2123251 {
2124  extract opcode (8), arg_lsb (8);
2125  dispatch DUP_STACK_TOP;
2126  dispatch PUSH_LIT_CONSTANT (arg | arg_lsb);
2127}
2128
2129/* LINE_NUMBER_BYTECODE(*)
2130   PUSH_TEMPORARY_VARIABLE(0)
2131   RETURN_CONTEXT_STACK_TOP(0) */
2132252 {
2133  extract opcode (8), arg_lsb (8);
2134  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2135  dispatch PUSH_TEMPORARY_VARIABLE (0);
2136  dispatch RETURN_CONTEXT_STACK_TOP;
2137}
2138
2139/* PUSH_INTEGER(*)
2140   AT_PUT_SPECIAL(0) */
2141253 {
2142  extract opcode (8), arg_lsb (8);
2143  dispatch PUSH_INTEGER (arg | arg_lsb);
2144  dispatch SEND_SPECIAL (1);
2145}
2146
2147/* PUSH_TEMPORARY_VARIABLE(*)
2148   CLASS_SPECIAL(0) */
2149254 {
2150  extract opcode (8), arg_lsb (8);
2151  dispatch PUSH_TEMPORARY_VARIABLE (arg | arg_lsb);
2152  dispatch SEND_SPECIAL (3);
2153}
2154
2155/* LINE_NUMBER_BYTECODE(*)
2156   EXT_BYTE(2)
2157   PUSH_OUTER_TEMP(1) */
2158255 {
2159  extract opcode (8), arg_lsb (8);
2160  dispatch LINE_NUMBER_BYTECODE (arg | arg_lsb);
2161  dispatch PUSH_OUTER_TEMP (2, 1);
2162}
2163
2164