d068e3cd590cf2efa9dd60d340f378afb5219006
[swftools.git] / lib / as3 / opcodes.h
1 #ifndef __opcodes_h__
2 #define __opcodes_h__
3 #include "abc.h"
4 #include "pool.h"
5 #include "code.h"
6 code_t* abc_add(code_t*prev);
7 #define add(method) (method->code = abc_add(method->code))
8 code_t* abc_add_i(code_t*prev);
9 #define add_i(method) (method->code = abc_add_i(method->code))
10 code_t* abc_astype(code_t*prev, char* name);
11 #define astype(method,name) (method->code = abc_astype(method->code,name))
12 code_t* abc_astype2(code_t*prev, multiname_t* name);
13 #define astype2(method,name) (method->code = abc_astype2(method->code,name))
14 code_t* abc_astypelate(code_t*prev);
15 #define astypelate(method) (method->code = abc_astypelate(method->code))
16 code_t* abc_bitand(code_t*prev);
17 #define bitand(method) (method->code = abc_bitand(method->code))
18 code_t* abc_bitnot(code_t*prev);
19 #define bitnot(method) (method->code = abc_bitnot(method->code))
20 code_t* abc_bitor(code_t*prev);
21 #define bitor(method) (method->code = abc_bitor(method->code))
22 code_t* abc_bitxor(code_t*prev);
23 #define bitxor(method) (method->code = abc_bitxor(method->code))
24 code_t* abc_call(code_t*prev, int v);
25 #define call(method,v) (method->code = abc_call(method->code,v))
26 code_t* abc_callmethod(code_t*prev, abc_method_body_t* m, int v);
27 #define callmethod(method,m,v) (method->code = abc_callmethod(method->code,m,v))
28 code_t* abc_callproplex(code_t*prev, char* name, int v);
29 #define callproplex(method,name,v) (method->code = abc_callproplex(method->code,name,v))
30 code_t* abc_callproplex2(code_t*prev, multiname_t* name, int v);
31 #define callproplex2(method,name,v) (method->code = abc_callproplex2(method->code,name,v))
32 code_t* abc_callproperty(code_t*prev, char* name, int v);
33 #define callproperty(method,name,v) (method->code = abc_callproperty(method->code,name,v))
34 code_t* abc_callproperty2(code_t*prev, multiname_t* name, int v);
35 #define callproperty2(method,name,v) (method->code = abc_callproperty2(method->code,name,v))
36 code_t* abc_callpropvoid(code_t*prev, char* name, int v);
37 #define callpropvoid(method,name,v) (method->code = abc_callpropvoid(method->code,name,v))
38 code_t* abc_callpropvoid2(code_t*prev, multiname_t* name, int v);
39 #define callpropvoid2(method,name,v) (method->code = abc_callpropvoid2(method->code,name,v))
40 code_t* abc_callstatic(code_t*prev, abc_method_t* m, int v);
41 #define callstatic(method,m,v) (method->code = abc_callstatic(method->code,m,v))
42 code_t* abc_callsuper(code_t*prev, char* name, int v);
43 #define callsuper(method,name,v) (method->code = abc_callsuper(method->code,name,v))
44 code_t* abc_callsuper2(code_t*prev, multiname_t* name, int v);
45 #define callsuper2(method,name,v) (method->code = abc_callsuper2(method->code,name,v))
46 code_t* abc_callsupervoid(code_t*prev, char* name, int v);
47 #define callsupervoid(method,name,v) (method->code = abc_callsupervoid(method->code,name,v))
48 code_t* abc_callsupervoid2(code_t*prev, multiname_t* name, int v);
49 #define callsupervoid2(method,name,v) (method->code = abc_callsupervoid2(method->code,name,v))
50 code_t* abc_checkfilter(code_t*prev);
51 #define checkfilter(method) (method->code = abc_checkfilter(method->code))
52 code_t* abc_coerce(code_t*prev, char* name);
53 #define coerce(method,name) (method->code = abc_coerce(method->code,name))
54 code_t* abc_coerce2(code_t*prev, multiname_t* name);
55 #define coerce2(method,name) (method->code = abc_coerce2(method->code,name))
56 code_t* abc_coerce_a(code_t*prev);
57 #define coerce_a(method) (method->code = abc_coerce_a(method->code))
58 code_t* abc_coerce_s(code_t*prev);
59 #define coerce_s(method) (method->code = abc_coerce_s(method->code))
60 code_t* abc_construct(code_t*prev, int v);
61 #define construct(method,v) (method->code = abc_construct(method->code,v))
62 code_t* abc_constructprop(code_t*prev, char* name, int v);
63 #define constructprop(method,name,v) (method->code = abc_constructprop(method->code,name,v))
64 code_t* abc_constructprop2(code_t*prev, multiname_t* name, int v);
65 #define constructprop2(method,name,v) (method->code = abc_constructprop2(method->code,name,v))
66 code_t* abc_constructsuper(code_t*prev, int v);
67 #define constructsuper(method,v) (method->code = abc_constructsuper(method->code,v))
68 code_t* abc_convert_b(code_t*prev);
69 #define convert_b(method) (method->code = abc_convert_b(method->code))
70 code_t* abc_convert_i(code_t*prev);
71 #define convert_i(method) (method->code = abc_convert_i(method->code))
72 code_t* abc_convert_d(code_t*prev);
73 #define convert_d(method) (method->code = abc_convert_d(method->code))
74 code_t* abc_convert_o(code_t*prev);
75 #define convert_o(method) (method->code = abc_convert_o(method->code))
76 code_t* abc_convert_u(code_t*prev);
77 #define convert_u(method) (method->code = abc_convert_u(method->code))
78 code_t* abc_convert_s(code_t*prev);
79 #define convert_s(method) (method->code = abc_convert_s(method->code))
80 code_t* abc_debug(code_t*prev, void* debuginfo);
81 #define debug(method,debuginfo) (method->code = abc_debug(method->code,debuginfo))
82 code_t* abc_debugfile(code_t*prev, char* s);
83 #define debugfile(method,s) (method->code = abc_debugfile(method->code,s))
84 code_t* abc_debugline(code_t*prev, int v);
85 #define debugline(method,v) (method->code = abc_debugline(method->code,v))
86 code_t* abc_declocal(code_t*prev, int reg);
87 #define declocal(method,reg) (method->code = abc_declocal(method->code,reg))
88 code_t* abc_declocal_i(code_t*prev, int reg);
89 #define declocal_i(method,reg) (method->code = abc_declocal_i(method->code,reg))
90 code_t* abc_decrement(code_t*prev);
91 #define decrement(method) (method->code = abc_decrement(method->code))
92 code_t* abc_decrement_i(code_t*prev);
93 #define decrement_i(method) (method->code = abc_decrement_i(method->code))
94 code_t* abc_deleteproperty(code_t*prev, char* name);
95 #define deleteproperty(method,name) (method->code = abc_deleteproperty(method->code,name))
96 code_t* abc_deleteproperty2(code_t*prev, multiname_t* name);
97 #define deleteproperty2(method,name) (method->code = abc_deleteproperty2(method->code,name))
98 code_t* abc_divide(code_t*prev);
99 #define divide(method) (method->code = abc_divide(method->code))
100 code_t* abc_dup(code_t*prev);
101 #define dup(method) (method->code = abc_dup(method->code))
102 code_t* abc_dxns(code_t*prev, char* s);
103 #define dxns(method,s) (method->code = abc_dxns(method->code,s))
104 code_t* abc_dxnslate(code_t*prev);
105 #define dxnslate(method) (method->code = abc_dxnslate(method->code))
106 code_t* abc_equals(code_t*prev);
107 #define equals(method) (method->code = abc_equals(method->code))
108 code_t* abc_esc_xattr(code_t*prev);
109 #define esc_xattr(method) (method->code = abc_esc_xattr(method->code))
110 code_t* abc_esc_xelem(code_t*prev);
111 #define esc_xelem(method) (method->code = abc_esc_xelem(method->code))
112 code_t* abc_findproperty(code_t*prev, char* name);
113 #define findproperty(method,name) (method->code = abc_findproperty(method->code,name))
114 code_t* abc_findproperty2(code_t*prev, multiname_t* name);
115 #define findproperty2(method,name) (method->code = abc_findproperty2(method->code,name))
116 code_t* abc_findpropstrict(code_t*prev, char* name);
117 #define findpropstrict(method,name) (method->code = abc_findpropstrict(method->code,name))
118 code_t* abc_findpropstrict2(code_t*prev, multiname_t* name);
119 #define findpropstrict2(method,name) (method->code = abc_findpropstrict2(method->code,name))
120 code_t* abc_getdescendants(code_t*prev, char* name);
121 #define getdescendants(method,name) (method->code = abc_getdescendants(method->code,name))
122 code_t* abc_getdescendants2(code_t*prev, multiname_t* name);
123 #define getdescendants2(method,name) (method->code = abc_getdescendants2(method->code,name))
124 code_t* abc_getglobalscope(code_t*prev);
125 #define getglobalscope(method) (method->code = abc_getglobalscope(method->code))
126 code_t* abc_getglobalslot(code_t*prev, int v);
127 #define getglobalslot(method,v) (method->code = abc_getglobalslot(method->code,v))
128 code_t* abc_getlex(code_t*prev, char* name);
129 #define getlex(method,name) (method->code = abc_getlex(method->code,name))
130 code_t* abc_getlex2(code_t*prev, multiname_t* name);
131 #define getlex2(method,name) (method->code = abc_getlex2(method->code,name))
132 code_t* abc_getlocal(code_t*prev, int reg);
133 #define getlocal(method,reg) (method->code = abc_getlocal(method->code,reg))
134 code_t* abc_getlocal_0(code_t*prev);
135 #define getlocal_0(method) (method->code = abc_getlocal_0(method->code))
136 code_t* abc_getlocal_1(code_t*prev);
137 #define getlocal_1(method) (method->code = abc_getlocal_1(method->code))
138 code_t* abc_getlocal_2(code_t*prev);
139 #define getlocal_2(method) (method->code = abc_getlocal_2(method->code))
140 code_t* abc_getlocal_3(code_t*prev);
141 #define getlocal_3(method) (method->code = abc_getlocal_3(method->code))
142 code_t* abc_getproperty(code_t*prev, char* name);
143 #define getproperty(method,name) (method->code = abc_getproperty(method->code,name))
144 code_t* abc_getproperty2(code_t*prev, multiname_t* name);
145 #define getproperty2(method,name) (method->code = abc_getproperty2(method->code,name))
146 code_t* abc_getscopeobject(code_t*prev, int v);
147 #define getscopeobject(method,v) (method->code = abc_getscopeobject(method->code,v))
148 code_t* abc_getslot(code_t*prev, int v);
149 #define getslot(method,v) (method->code = abc_getslot(method->code,v))
150 code_t* abc_getsuper(code_t*prev, char* name);
151 #define getsuper(method,name) (method->code = abc_getsuper(method->code,name))
152 code_t* abc_getsuper2(code_t*prev, multiname_t* name);
153 #define getsuper2(method,name) (method->code = abc_getsuper2(method->code,name))
154 code_t* abc_greaterthan(code_t*prev);
155 #define greaterthan(method) (method->code = abc_greaterthan(method->code))
156 code_t* abc_greaterequals(code_t*prev);
157 #define greaterequals(method) (method->code = abc_greaterequals(method->code))
158 code_t* abc_hasnext(code_t*prev);
159 #define hasnext(method) (method->code = abc_hasnext(method->code))
160 code_t* abc_hasnext2(code_t*prev, int reg, int reg2);
161 #define hasnext2(method,reg,reg2) (method->code = abc_hasnext2(method->code,reg,reg2))
162 code_t* abc_ifeq(code_t*prev, code_t* label);
163 #define ifeq(method,label) (method->code = abc_ifeq(method->code,label))
164 code_t* abc_iffalse(code_t*prev, code_t* label);
165 #define iffalse(method,label) (method->code = abc_iffalse(method->code,label))
166 code_t* abc_ifge(code_t*prev, code_t* label);
167 #define ifge(method,label) (method->code = abc_ifge(method->code,label))
168 code_t* abc_ifgt(code_t*prev, code_t* label);
169 #define ifgt(method,label) (method->code = abc_ifgt(method->code,label))
170 code_t* abc_ifle(code_t*prev, code_t* label);
171 #define ifle(method,label) (method->code = abc_ifle(method->code,label))
172 code_t* abc_iflt(code_t*prev, code_t* label);
173 #define iflt(method,label) (method->code = abc_iflt(method->code,label))
174 code_t* abc_ifnge(code_t*prev, code_t* label);
175 #define ifnge(method,label) (method->code = abc_ifnge(method->code,label))
176 code_t* abc_ifngt(code_t*prev, code_t* label);
177 #define ifngt(method,label) (method->code = abc_ifngt(method->code,label))
178 code_t* abc_ifnle(code_t*prev, code_t* label);
179 #define ifnle(method,label) (method->code = abc_ifnle(method->code,label))
180 code_t* abc_ifnlt(code_t*prev, code_t* label);
181 #define ifnlt(method,label) (method->code = abc_ifnlt(method->code,label))
182 code_t* abc_ifne(code_t*prev, code_t* label);
183 #define ifne(method,label) (method->code = abc_ifne(method->code,label))
184 code_t* abc_ifstricteq(code_t*prev, code_t* label);
185 #define ifstricteq(method,label) (method->code = abc_ifstricteq(method->code,label))
186 code_t* abc_ifstrictne(code_t*prev, code_t* label);
187 #define ifstrictne(method,label) (method->code = abc_ifstrictne(method->code,label))
188 code_t* abc_iftrue(code_t*prev, code_t* label);
189 #define iftrue(method,label) (method->code = abc_iftrue(method->code,label))
190 code_t* abc_in(code_t*prev);
191 #define in(method) (method->code = abc_in(method->code))
192 code_t* abc_inclocal(code_t*prev, int reg);
193 #define inclocal(method,reg) (method->code = abc_inclocal(method->code,reg))
194 code_t* abc_inclocal_i(code_t*prev, int reg);
195 #define inclocal_i(method,reg) (method->code = abc_inclocal_i(method->code,reg))
196 code_t* abc_increment(code_t*prev);
197 #define increment(method) (method->code = abc_increment(method->code))
198 code_t* abc_increment_i(code_t*prev);
199 #define increment_i(method) (method->code = abc_increment_i(method->code))
200 code_t* abc_initproperty(code_t*prev, char* name);
201 #define initproperty(method,name) (method->code = abc_initproperty(method->code,name))
202 code_t* abc_initproperty2(code_t*prev, multiname_t* name);
203 #define initproperty2(method,name) (method->code = abc_initproperty2(method->code,name))
204 code_t* abc_instanceof(code_t*prev);
205 #define instanceof(method) (method->code = abc_instanceof(method->code))
206 code_t* abc_istype(code_t*prev, char* name);
207 #define istype(method,name) (method->code = abc_istype(method->code,name))
208 code_t* abc_istype2(code_t*prev, multiname_t* name);
209 #define istype2(method,name) (method->code = abc_istype2(method->code,name))
210 code_t* abc_istypelate(code_t*prev);
211 #define istypelate(method) (method->code = abc_istypelate(method->code))
212 code_t* abc_jump(code_t*prev, code_t* label);
213 #define jump(method,label) (method->code = abc_jump(method->code,label))
214 code_t* abc_kill(code_t*prev, int reg);
215 #define kill(method,reg) (method->code = abc_kill(method->code,reg))
216 code_t* abc_label(code_t*prev);
217 #define label(method) (method->code = abc_label(method->code))
218 code_t* abc_lessequals(code_t*prev);
219 #define lessequals(method) (method->code = abc_lessequals(method->code))
220 code_t* abc_lessthan(code_t*prev);
221 #define lessthan(method) (method->code = abc_lessthan(method->code))
222 code_t* abc_lookupswitch(code_t*prev, lookupswitch_t* l);
223 #define lookupswitch(method,l) (method->code = abc_lookupswitch(method->code,l))
224 code_t* abc_lshift(code_t*prev);
225 #define lshift(method) (method->code = abc_lshift(method->code))
226 code_t* abc_modulo(code_t*prev);
227 #define modulo(method) (method->code = abc_modulo(method->code))
228 code_t* abc_multiply(code_t*prev);
229 #define multiply(method) (method->code = abc_multiply(method->code))
230 code_t* abc_multiply_i(code_t*prev);
231 #define multiply_i(method) (method->code = abc_multiply_i(method->code))
232 code_t* abc_negate(code_t*prev);
233 #define negate(method) (method->code = abc_negate(method->code))
234 code_t* abc_negate_i(code_t*prev);
235 #define negate_i(method) (method->code = abc_negate_i(method->code))
236 code_t* abc_newactivation(code_t*prev);
237 #define newactivation(method) (method->code = abc_newactivation(method->code))
238 code_t* abc_newarray(code_t*prev, int v);
239 #define newarray(method,v) (method->code = abc_newarray(method->code,v))
240 code_t* abc_newcatch(code_t*prev, int v);
241 #define newcatch(method,v) (method->code = abc_newcatch(method->code,v))
242 code_t* abc_newclass(code_t*prev, abc_class_t* m);
243 #define newclass(method,m) (method->code = abc_newclass(method->code,m))
244 code_t* abc_newfunction(code_t*prev, abc_method_body_t* m);
245 #define newfunction(method,m) (method->code = abc_newfunction(method->code,m))
246 code_t* abc_newobject(code_t*prev, int v);
247 #define newobject(method,v) (method->code = abc_newobject(method->code,v))
248 code_t* abc_nextname(code_t*prev);
249 #define nextname(method) (method->code = abc_nextname(method->code))
250 code_t* abc_nextvalue(code_t*prev);
251 #define nextvalue(method) (method->code = abc_nextvalue(method->code))
252 code_t* abc_nop(code_t*prev);
253 #define nop(method) (method->code = abc_nop(method->code))
254 code_t* abc_not(code_t*prev);
255 #define not(method) (method->code = abc_not(method->code))
256 code_t* abc_pop(code_t*prev);
257 #define pop(method) (method->code = abc_pop(method->code))
258 code_t* abc_popscope(code_t*prev);
259 #define popscope(method) (method->code = abc_popscope(method->code))
260 code_t* abc_pushbyte(code_t*prev, int v);
261 #define pushbyte(method,v) (method->code = abc_pushbyte(method->code,v))
262 code_t* abc_pushdouble(code_t*prev, double f);
263 #define pushdouble(method,f) (method->code = abc_pushdouble(method->code,f))
264 code_t* abc_pushfalse(code_t*prev);
265 #define pushfalse(method) (method->code = abc_pushfalse(method->code))
266 code_t* abc_pushint(code_t*prev, int i);
267 #define pushint(method,i) (method->code = abc_pushint(method->code,i))
268 code_t* abc_pushnamespace(code_t*prev, int v);
269 #define pushnamespace(method,v) (method->code = abc_pushnamespace(method->code,v))
270 code_t* abc_pushnan(code_t*prev);
271 #define pushnan(method) (method->code = abc_pushnan(method->code))
272 code_t* abc_pushnull(code_t*prev);
273 #define pushnull(method) (method->code = abc_pushnull(method->code))
274 code_t* abc_pushscope(code_t*prev);
275 #define pushscope(method) (method->code = abc_pushscope(method->code))
276 code_t* abc_pushshort(code_t*prev, int v);
277 #define pushshort(method,v) (method->code = abc_pushshort(method->code,v))
278 code_t* abc_pushstring(code_t*prev, char* s);
279 #define pushstring(method,s) (method->code = abc_pushstring(method->code,s))
280 code_t* abc_pushtrue(code_t*prev);
281 #define pushtrue(method) (method->code = abc_pushtrue(method->code))
282 code_t* abc_pushuint(code_t*prev, unsigned int u);
283 #define pushuint(method,u) (method->code = abc_pushuint(method->code,u))
284 code_t* abc_pushundefined(code_t*prev);
285 #define pushundefined(method) (method->code = abc_pushundefined(method->code))
286 code_t* abc_pushwith(code_t*prev);
287 #define pushwith(method) (method->code = abc_pushwith(method->code))
288 code_t* abc_returnvalue(code_t*prev);
289 #define returnvalue(method) (method->code = abc_returnvalue(method->code))
290 code_t* abc_returnvoid(code_t*prev);
291 #define returnvoid(method) (method->code = abc_returnvoid(method->code))
292 code_t* abc_rshift(code_t*prev);
293 #define rshift(method) (method->code = abc_rshift(method->code))
294 code_t* abc_setlocal(code_t*prev, int reg);
295 #define setlocal(method,reg) (method->code = abc_setlocal(method->code,reg))
296 code_t* abc_setlocal_0(code_t*prev);
297 #define setlocal_0(method) (method->code = abc_setlocal_0(method->code))
298 code_t* abc_setlocal_1(code_t*prev);
299 #define setlocal_1(method) (method->code = abc_setlocal_1(method->code))
300 code_t* abc_setlocal_2(code_t*prev);
301 #define setlocal_2(method) (method->code = abc_setlocal_2(method->code))
302 code_t* abc_setlocal_3(code_t*prev);
303 #define setlocal_3(method) (method->code = abc_setlocal_3(method->code))
304 code_t* abc_setglobalslot(code_t*prev, int v);
305 #define setglobalslot(method,v) (method->code = abc_setglobalslot(method->code,v))
306 code_t* abc_setproperty(code_t*prev, char* name);
307 #define setproperty(method,name) (method->code = abc_setproperty(method->code,name))
308 code_t* abc_setproperty2(code_t*prev, multiname_t* name);
309 #define setproperty2(method,name) (method->code = abc_setproperty2(method->code,name))
310 code_t* abc_setslot(code_t*prev, int v);
311 #define setslot(method,v) (method->code = abc_setslot(method->code,v))
312 code_t* abc_setsuper(code_t*prev, char* name);
313 #define setsuper(method,name) (method->code = abc_setsuper(method->code,name))
314 code_t* abc_setsuper2(code_t*prev, multiname_t* name);
315 #define setsuper2(method,name) (method->code = abc_setsuper2(method->code,name))
316 code_t* abc_strictequals(code_t*prev);
317 #define strictequals(method) (method->code = abc_strictequals(method->code))
318 code_t* abc_subtract(code_t*prev);
319 #define subtract(method) (method->code = abc_subtract(method->code))
320 code_t* abc_subtract_i(code_t*prev);
321 #define subtract_i(method) (method->code = abc_subtract_i(method->code))
322 code_t* abc_swap(code_t*prev);
323 #define swap(method) (method->code = abc_swap(method->code))
324 code_t* abc_throw(code_t*prev);
325 #define throw(method) (method->code = abc_throw(method->code))
326 code_t* abc_typeof(code_t*prev);
327 #define typeof(method) (method->code = abc_typeof(method->code))
328 code_t* abc_urshift(code_t*prev);
329 #define urshift(method) (method->code = abc_urshift(method->code))
330 #endif