1 /* see copyright notice in squirrel.h */
\r
2 #ifndef _SQOPCODES_H_
\r
3 #define _SQOPCODES_H_
\r
5 #define MAX_FUNC_STACKSIZE 0xFF
\r
6 #define MAX_LITERALS ((SQInteger)0x7FFFFFFF)
\r
28 _OP_LOADFLOAT= 0x03,
\r
30 _OP_TAILCALL= 0x05,
\r
32 _OP_PREPCALL= 0x07,
\r
33 _OP_PREPCALLK= 0x08,
\r
45 _OP_LOADNULLS= 0x14,
\r
46 _OP_LOADROOTTABLE= 0x15,
\r
52 _OP_LOADFREEVAR= 0x1B,
\r
54 _OP_GETVARGV= 0x1D,
\r
55 _OP_NEWTABLE= 0x1E,
\r
56 _OP_NEWARRAY= 0x1F,
\r
57 _OP_APPENDARRAY= 0x20,
\r
58 _OP_GETPARENT= 0x21,
\r
59 _OP_COMPARITH= 0x22,
\r
60 _OP_COMPARITHL= 0x23,
\r
67 _OP_INSTANCEOF= 0x2A,
\r
77 _OP_POSTFOREACH= 0x34,
\r
88 struct SQInstructionDesc {
\r
89 const SQChar *name;
\r
92 struct SQInstruction
\r
95 SQInstruction(SQOpcode _op,SQInteger a0=0,SQInteger a1=0,SQInteger a2=0,SQInteger a3=0)
\r
97 _arg0 = (unsigned char)a0;_arg1 = (SQInt32)a1;
\r
98 _arg2 = (unsigned char)a2;_arg3 = (unsigned char)a3;
\r
104 unsigned char _arg0;
\r
105 unsigned char _arg2;
\r
106 unsigned char _arg3;
\r
109 #include "squtils.h"
\r
110 typedef sqvector<SQInstruction> SQInstructionVec;
\r
112 #define NEW_SLOT_ATTRIBUTES_FLAG 0x01
\r
113 #define NEW_SLOT_STATIC_FLAG 0x02
\r
115 #endif // _SQOPCODES_H_
\r