SpiderScript - Moved header to directory, ready to remove from tree
[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         BC_OP_LOADNULL,
26
27         BC_OP_DUPSTACK, // = 14
28         BC_OP_DELSTACK, // 
29         BC_OP_CAST,     //
30         
31         BC_OP_ELEMENT,  // = 17
32         BC_OP_SETELEMENT,
33         BC_OP_INDEX,
34         BC_OP_SETINDEX,
35
36         BC_OP_ENTERCONTEXT,     // = 21
37         BC_OP_LEAVECONTEXT,
38         BC_OP_DEFINEVAR,
39
40         // Operations
41         BC_OP_LOGICNOT, // 24
42         BC_OP_LOGICAND,
43         BC_OP_LOGICOR,
44         BC_OP_LOGICXOR,
45
46         BC_OP_BITNOT,   // 28
47         BC_OP_BITAND,
48         BC_OP_BITOR,
49         BC_OP_BITXOR,
50
51         BC_OP_BITSHIFTLEFT,     // 32
52         BC_OP_BITSHIFTRIGHT,
53         BC_OP_BITROTATELEFT,
54
55         BC_OP_NEG,      // 35
56         BC_OP_ADD,
57         BC_OP_SUBTRACT,
58         BC_OP_MULTIPLY,
59         BC_OP_DIVIDE,
60         BC_OP_MODULO,
61
62         BC_OP_EQUALS,   // 41
63         BC_OP_NOTEQUALS,
64         BC_OP_LESSTHAN,
65         BC_OP_LESSTHANOREQUAL,
66         BC_OP_GREATERTHAN,
67         BC_OP_GREATERTHANOREQUAL
68 };
69
70 #endif

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