diff options
Diffstat (limited to 'lopcodes.c')
-rw-r--r-- | lopcodes.c | 85 |
1 files changed, 41 insertions, 44 deletions
@@ -1,7 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lopcodes.c,v 1.22 2002/12/04 17:38:31 roberto Exp roberto $ | 2 | ** $Id: lopcodes.c,v 1.23 2003/05/13 20:15:59 roberto Exp roberto $ |
3 | ** extracted automatically from lopcodes.h by mkprint.lua | ||
4 | ** DO NOT EDIT | ||
5 | ** See Copyright Notice in lua.h | 3 | ** See Copyright Notice in lua.h |
6 | */ | 4 | */ |
7 | 5 | ||
@@ -14,6 +12,8 @@ | |||
14 | #include "lopcodes.h" | 12 | #include "lopcodes.h" |
15 | 13 | ||
16 | 14 | ||
15 | /* ORDER OP */ | ||
16 | |||
17 | #ifdef LUA_OPNAMES | 17 | #ifdef LUA_OPNAMES |
18 | 18 | ||
19 | const char *const luaP_opnames[] = { | 19 | const char *const luaP_opnames[] = { |
@@ -57,48 +57,45 @@ const char *const luaP_opnames[] = { | |||
57 | 57 | ||
58 | #endif | 58 | #endif |
59 | 59 | ||
60 | #define opmode(t,b,bk,ck,sa,k,m) (((t)<<OpModeT) | \ | 60 | #define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m)) |
61 | ((b)<<OpModeBreg) | ((bk)<<OpModeBrk) | ((ck)<<OpModeCrk) | \ | ||
62 | ((sa)<<OpModesetA) | ((k)<<OpModeK) | (m)) | ||
63 | |||
64 | 61 | ||
65 | const lu_byte luaP_opmodes[NUM_OPCODES] = { | 62 | const lu_byte luaP_opmodes[NUM_OPCODES] = { |
66 | /* T B Bk Ck sA K mode opcode */ | 63 | /* T A B C mode opcode */ |
67 | opmode(0, 1, 0, 0, 1, 0, iABC) /* OP_MOVE */ | 64 | opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_MOVE */ |
68 | ,opmode(0, 0, 0, 0, 1, 1, iABx) /* OP_LOADK */ | 65 | ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_LOADK */ |
69 | ,opmode(0, 0, 0, 0, 1, 0, iABC) /* OP_LOADBOOL */ | 66 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */ |
70 | ,opmode(0, 1, 0, 0, 1, 0, iABC) /* OP_LOADNIL */ | 67 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LOADNIL */ |
71 | ,opmode(0, 0, 0, 0, 1, 0, iABC) /* OP_GETUPVAL */ | 68 | ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */ |
72 | ,opmode(0, 0, 0, 0, 1, 1, iABx) /* OP_GETGLOBAL */ | 69 | ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_GETGLOBAL */ |
73 | ,opmode(0, 1, 0, 1, 1, 0, iABC) /* OP_GETTABLE */ | 70 | ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETTABLE */ |
74 | ,opmode(0, 0, 0, 0, 0, 1, iABx) /* OP_SETGLOBAL */ | 71 | ,opmode(0, 0, OpArgK, OpArgN, iABx) /* OP_SETGLOBAL */ |
75 | ,opmode(0, 0, 0, 0, 0, 0, iABC) /* OP_SETUPVAL */ | 72 | ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */ |
76 | ,opmode(0, 0, 1, 1, 0, 0, iABC) /* OP_SETTABLE */ | 73 | ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABLE */ |
77 | ,opmode(0, 0, 0, 0, 1, 0, iABC) /* OP_NEWTABLE */ | 74 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */ |
78 | ,opmode(0, 1, 0, 1, 1, 0, iABC) /* OP_SELF */ | 75 | ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */ |
79 | ,opmode(0, 0, 1, 1, 1, 0, iABC) /* OP_ADD */ | 76 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_ADD */ |
80 | ,opmode(0, 0, 1, 1, 1, 0, iABC) /* OP_SUB */ | 77 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SUB */ |
81 | ,opmode(0, 0, 1, 1, 1, 0, iABC) /* OP_MUL */ | 78 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MUL */ |
82 | ,opmode(0, 0, 1, 1, 1, 0, iABC) /* OP_DIV */ | 79 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_DIV */ |
83 | ,opmode(0, 0, 1, 1, 1, 0, iABC) /* OP_POW */ | 80 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_POW */ |
84 | ,opmode(0, 1, 0, 0, 1, 0, iABC) /* OP_UNM */ | 81 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_UNM */ |
85 | ,opmode(0, 1, 0, 0, 1, 0, iABC) /* OP_NOT */ | 82 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_NOT */ |
86 | ,opmode(0, 1, 0, 1, 1, 0, iABC) /* OP_CONCAT */ | 83 | ,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_CONCAT */ |
87 | ,opmode(0, 0, 0, 0, 0, 0, iAsBx) /* OP_JMP */ | 84 | ,opmode(0, 0, OpArgR, OpArgN, iAsBx) /* OP_JMP */ |
88 | ,opmode(1, 0, 1, 1, 0, 0, iABC) /* OP_EQ */ | 85 | ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_EQ */ |
89 | ,opmode(1, 0, 1, 1, 0, 0, iABC) /* OP_LT */ | 86 | ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LT */ |
90 | ,opmode(1, 0, 1, 1, 0, 0, iABC) /* OP_LE */ | 87 | ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LE */ |
91 | ,opmode(1, 1, 0, 0, 1, 0, iABC) /* OP_TEST */ | 88 | ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TEST */ |
92 | ,opmode(0, 0, 0, 0, 0, 0, iABC) /* OP_CALL */ | 89 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_CALL */ |
93 | ,opmode(0, 0, 0, 0, 0, 0, iABC) /* OP_TAILCALL */ | 90 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_TAILCALL */ |
94 | ,opmode(0, 0, 0, 0, 0, 0, iABC) /* OP_RETURN */ | 91 | ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_RETURN */ |
95 | ,opmode(0, 0, 0, 0, 0, 0, iAsBx) /* OP_FORLOOP */ | 92 | ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORLOOP */ |
96 | ,opmode(0, 0, 0, 0, 0, 0, iAsBx) /* OP_FORPREP */ | 93 | ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORPREP */ |
97 | ,opmode(1, 0, 0, 0, 0, 0, iABC) /* OP_TFORLOOP */ | 94 | ,opmode(1, 0, OpArgN, OpArgU, iABC) /* OP_TFORLOOP */ |
98 | ,opmode(0, 0, 0, 0, 0, 0, iAsBx) /* OP_TFORPREP */ | 95 | ,opmode(0, 0, OpArgR, OpArgN, iAsBx) /* OP_TFORPREP */ |
99 | ,opmode(0, 0, 0, 0, 0, 0, iABx) /* OP_SETLIST */ | 96 | ,opmode(0, 0, OpArgU, OpArgN, iABx) /* OP_SETLIST */ |
100 | ,opmode(0, 0, 0, 0, 0, 0, iABx) /* OP_SETLISTO */ | 97 | ,opmode(0, 0, OpArgU, OpArgN, iABx) /* OP_SETLISTO */ |
101 | ,opmode(0, 0, 0, 0, 0, 0, iABC) /* OP_CLOSE */ | 98 | ,opmode(0, 0, OpArgN, OpArgN, iABC) /* OP_CLOSE */ |
102 | ,opmode(0, 0, 0, 0, 1, 0, iABx) /* OP_CLOSURE */ | 99 | ,opmode(0, 1, OpArgU, OpArgN, iABx) /* OP_CLOSURE */ |
103 | }; | 100 | }; |
104 | 101 | ||