00001
00002
00003
00004
00005
00006
00007
00008
00009 #define lopcodes_c
00010
00011 #include "lua.h"
00012
00013 #include "lobject.h"
00014 #include "lopcodes.h"
00015
00016
00017 #ifdef LUA_OPNAMES
00018
00019 const char *const luaP_opnames[] = {
00020 "MOVE",
00021 "LOADK",
00022 "LOADBOOL",
00023 "LOADNIL",
00024 "GETUPVAL",
00025 "GETGLOBAL",
00026 "GETTABLE",
00027 "SETGLOBAL",
00028 "SETUPVAL",
00029 "SETTABLE",
00030 "NEWTABLE",
00031 "SELF",
00032 "ADD",
00033 "SUB",
00034 "MUL",
00035 "DIV",
00036 "POW",
00037 "UNM",
00038 "NOT",
00039 "CONCAT",
00040 "JMP",
00041 "EQ",
00042 "LT",
00043 "LE",
00044 "TEST",
00045 "CALL",
00046 "TAILCALL",
00047 "RETURN",
00048 "FORLOOP",
00049 "TFORLOOP",
00050 "TFORPREP",
00051 "SETLIST",
00052 "SETLISTO",
00053 "CLOSE",
00054 "CLOSURE"
00055 };
00056
00057 #endif
00058
00059 #define opmode(t,b,bk,ck,sa,k,m) (((t)<<OpModeT) | \
00060 ((b)<<OpModeBreg) | ((bk)<<OpModeBrk) | ((ck)<<OpModeCrk) | \
00061 ((sa)<<OpModesetA) | ((k)<<OpModeK) | (m))
00062
00063
00064 const lu_byte luaP_opmodes[NUM_OPCODES] = {
00065
00066 opmode(0, 1, 0, 0, 1, 0, iABC)
00067 ,opmode(0, 0, 0, 0, 1, 1, iABx)
00068 ,opmode(0, 0, 0, 0, 1, 0, iABC)
00069 ,opmode(0, 1, 0, 0, 1, 0, iABC)
00070 ,opmode(0, 0, 0, 0, 1, 0, iABC)
00071 ,opmode(0, 0, 0, 0, 1, 1, iABx)
00072 ,opmode(0, 1, 0, 1, 1, 0, iABC)
00073 ,opmode(0, 0, 0, 0, 0, 1, iABx)
00074 ,opmode(0, 0, 0, 0, 0, 0, iABC)
00075 ,opmode(0, 0, 1, 1, 0, 0, iABC)
00076 ,opmode(0, 0, 0, 0, 1, 0, iABC)
00077 ,opmode(0, 1, 0, 1, 1, 0, iABC)
00078 ,opmode(0, 0, 1, 1, 1, 0, iABC)
00079 ,opmode(0, 0, 1, 1, 1, 0, iABC)
00080 ,opmode(0, 0, 1, 1, 1, 0, iABC)
00081 ,opmode(0, 0, 1, 1, 1, 0, iABC)
00082 ,opmode(0, 0, 1, 1, 1, 0, iABC)
00083 ,opmode(0, 1, 0, 0, 1, 0, iABC)
00084 ,opmode(0, 1, 0, 0, 1, 0, iABC)
00085 ,opmode(0, 1, 0, 1, 1, 0, iABC)
00086 ,opmode(0, 0, 0, 0, 0, 0, iAsBx)
00087 ,opmode(1, 0, 1, 1, 0, 0, iABC)
00088 ,opmode(1, 0, 1, 1, 0, 0, iABC)
00089 ,opmode(1, 0, 1, 1, 0, 0, iABC)
00090 ,opmode(1, 1, 0, 0, 1, 0, iABC)
00091 ,opmode(0, 0, 0, 0, 0, 0, iABC)
00092 ,opmode(0, 0, 0, 0, 0, 0, iABC)
00093 ,opmode(0, 0, 0, 0, 0, 0, iABC)
00094 ,opmode(0, 0, 0, 0, 0, 0, iAsBx)
00095 ,opmode(1, 0, 0, 0, 0, 0, iABC)
00096 ,opmode(0, 0, 0, 0, 0, 0, iAsBx)
00097 ,opmode(0, 0, 0, 0, 0, 0, iABx)
00098 ,opmode(0, 0, 0, 0, 0, 0, iABx)
00099 ,opmode(0, 0, 0, 0, 0, 0, iABC)
00100 ,opmode(0, 0, 0, 0, 1, 0, iABx)
00101 };
00102