1d15c5954021e85e5d52dc066ac122eb186432fd
[tpg/acess2.git] / Usermode / Libraries / libspiderscript.so_src / bytecode_ops.h
1 /**
2  */
3 #ifndef _BYTECODE_OPS_H_
4 #define _BYTECODE_OPS_H_
5
6 enum eBC_Ops
7 {
8         BC_OP_NOP,
9         
10         BC_OP_JUMP,
11         BC_OP_JUMPIF,
12         BC_OP_JUMPIFNOT,
13         
14         BC_OP_RETURN,   // = 4
15         BC_OP_CALLFUNCTION,
16         BC_OP_CALLMETHOD,
17         BC_OP_CREATEOBJ,        
18         
19         BC_OP_LOADVAR,  // = 8
20         BC_OP_SAVEVAR,
21
22         BC_OP_LOADINT,  // = 10
23         BC_OP_LOADREAL,
24         BC_OP_LOADSTR,
25
26         BC_OP_DUPSTACK, // = 13
27         BC_OP_CAST,     //
28         
29         BC_OP_ELEMENT,  // = 15
30         BC_OP_INDEX,
31
32         BC_OP_ENTERCONTEXT,     // = 17
33         BC_OP_LEAVECONTEXT,
34         BC_OP_DEFINEVAR,
35
36         // Operations
37         BC_OP_LOGICNOT, // 20
38         BC_OP_LOGICAND,
39         BC_OP_LOGICOR,
40         BC_OP_LOGICXOR,
41
42         BC_OP_BITNOT,   // 24
43         BC_OP_BITAND,
44         BC_OP_BITOR,
45         BC_OP_BITXOR,
46
47         BC_OP_BITSHIFTLEFT,     // 28
48         BC_OP_BITSHIFTRIGHT,
49         BC_OP_BITROTATELEFT,
50
51         BC_OP_NEG,      // 31
52         BC_OP_ADD,
53         BC_OP_SUBTRACT,
54         BC_OP_MULTIPLY,
55         BC_OP_DIVIDE,
56         BC_OP_MODULO,
57
58         BC_OP_EQUALS,   // 37
59         BC_OP_NOTEQUALS,
60         BC_OP_LESSTHAN,
61         BC_OP_LESSTHANOREQUAL,
62         BC_OP_GREATERTHAN,
63         BC_OP_GREATERTHANOREQUAL
64 };
65
66 #endif

UCC git Repository :: git.ucc.asn.au