diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2017-12-22 12:16:46 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2017-12-22 12:16:46 -0200 |
| commit | 4676f6599e04d4eaa78c050616e94994e6a36396 (patch) | |
| tree | 94ef87b23d9008bee2fd34df7703c77181b4d655 /lopcodes.c | |
| parent | 1d5b885437286a307a77b5d12756d73d374efd54 (diff) | |
| download | lua-4676f6599e04d4eaa78c050616e94994e6a36396.tar.gz lua-4676f6599e04d4eaa78c050616e94994e6a36396.tar.bz2 lua-4676f6599e04d4eaa78c050616e94994e6a36396.zip | |
new macros 'isOT'/'isIT'
(plus exchanged parameters of OP_VARARG to make it similar to other
'isOT' instructions)
Diffstat (limited to 'lopcodes.c')
| -rw-r--r-- | lopcodes.c | 152 |
1 files changed, 76 insertions, 76 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lopcodes.c,v 1.73 2017/12/13 18:32:09 roberto Exp roberto $ | 2 | ** $Id: lopcodes.c,v 1.74 2017/12/18 17:49:31 roberto Exp $ |
| 3 | ** Opcodes for Lua virtual machine | 3 | ** Opcodes for Lua virtual machine |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -97,80 +97,80 @@ LUAI_DDEF const char *const luaP_opnames[NUM_OPCODES+1] = { | |||
| 97 | 97 | ||
| 98 | 98 | ||
| 99 | LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = { | 99 | LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = { |
| 100 | /* T A mode opcode */ | 100 | /* OT IT T A mode opcode */ |
| 101 | opmode(0, 1, iABC) /* OP_MOVE */ | 101 | opmode(0, 0, 0, 1, iABC) /* OP_MOVE */ |
| 102 | ,opmode(0, 1, iAsBx) /* OP_LOADI */ | 102 | ,opmode(0, 0, 0, 1, iAsBx) /* OP_LOADI */ |
| 103 | ,opmode(0, 1, iAsBx) /* OP_LOADF */ | 103 | ,opmode(0, 0, 0, 1, iAsBx) /* OP_LOADF */ |
| 104 | ,opmode(0, 1, iABx) /* OP_LOADK */ | 104 | ,opmode(0, 0, 0, 1, iABx) /* OP_LOADK */ |
| 105 | ,opmode(0, 1, iABx) /* OP_LOADKX */ | 105 | ,opmode(0, 0, 0, 1, iABx) /* OP_LOADKX */ |
| 106 | ,opmode(0, 1, iABC) /* OP_LOADBOOL */ | 106 | ,opmode(0, 0, 0, 1, iABC) /* OP_LOADBOOL */ |
| 107 | ,opmode(0, 1, iABC) /* OP_LOADNIL */ | 107 | ,opmode(0, 0, 0, 1, iABC) /* OP_LOADNIL */ |
| 108 | ,opmode(0, 1, iABC) /* OP_GETUPVAL */ | 108 | ,opmode(0, 0, 0, 1, iABC) /* OP_GETUPVAL */ |
| 109 | ,opmode(0, 0, iABC) /* OP_SETUPVAL */ | 109 | ,opmode(0, 0, 0, 0, iABC) /* OP_SETUPVAL */ |
| 110 | ,opmode(0, 1, iABC) /* OP_GETTABUP */ | 110 | ,opmode(0, 0, 0, 1, iABC) /* OP_GETTABUP */ |
| 111 | ,opmode(0, 1, iABC) /* OP_GETTABLE */ | 111 | ,opmode(0, 0, 0, 1, iABC) /* OP_GETTABLE */ |
| 112 | ,opmode(0, 1, iABC) /* OP_GETI */ | 112 | ,opmode(0, 0, 0, 1, iABC) /* OP_GETI */ |
| 113 | ,opmode(0, 1, iABC) /* OP_GETFIELD */ | 113 | ,opmode(0, 0, 0, 1, iABC) /* OP_GETFIELD */ |
| 114 | ,opmode(0, 0, iABC) /* OP_SETTABUP */ | 114 | ,opmode(0, 0, 0, 0, iABC) /* OP_SETTABUP */ |
| 115 | ,opmode(0, 0, iABC) /* OP_SETTABLE */ | 115 | ,opmode(0, 0, 0, 0, iABC) /* OP_SETTABLE */ |
| 116 | ,opmode(0, 0, iABC) /* OP_SETI */ | 116 | ,opmode(0, 0, 0, 0, iABC) /* OP_SETI */ |
| 117 | ,opmode(0, 0, iABC) /* OP_SETFIELD */ | 117 | ,opmode(0, 0, 0, 0, iABC) /* OP_SETFIELD */ |
| 118 | ,opmode(0, 1, iABC) /* OP_NEWTABLE */ | 118 | ,opmode(0, 0, 0, 1, iABC) /* OP_NEWTABLE */ |
| 119 | ,opmode(0, 1, iABC) /* OP_SELF */ | 119 | ,opmode(0, 0, 0, 1, iABC) /* OP_SELF */ |
| 120 | ,opmode(0, 1, iABC) /* OP_ADDI */ | 120 | ,opmode(0, 0, 0, 1, iABC) /* OP_ADDI */ |
| 121 | ,opmode(0, 1, iABC) /* OP_SUBI */ | 121 | ,opmode(0, 0, 0, 1, iABC) /* OP_SUBI */ |
| 122 | ,opmode(0, 1, iABC) /* OP_MULI */ | 122 | ,opmode(0, 0, 0, 1, iABC) /* OP_MULI */ |
| 123 | ,opmode(0, 1, iABC) /* OP_MODI */ | 123 | ,opmode(0, 0, 0, 1, iABC) /* OP_MODI */ |
| 124 | ,opmode(0, 1, iABC) /* OP_POWI */ | 124 | ,opmode(0, 0, 0, 1, iABC) /* OP_POWI */ |
| 125 | ,opmode(0, 1, iABC) /* OP_DIVI */ | 125 | ,opmode(0, 0, 0, 1, iABC) /* OP_DIVI */ |
| 126 | ,opmode(0, 1, iABC) /* OP_IDIVI */ | 126 | ,opmode(0, 0, 0, 1, iABC) /* OP_IDIVI */ |
| 127 | ,opmode(0, 1, iABC) /* OP_BANDK */ | 127 | ,opmode(0, 0, 0, 1, iABC) /* OP_BANDK */ |
| 128 | ,opmode(0, 1, iABC) /* OP_BORK */ | 128 | ,opmode(0, 0, 0, 1, iABC) /* OP_BORK */ |
| 129 | ,opmode(0, 1, iABC) /* OP_BXORK */ | 129 | ,opmode(0, 0, 0, 1, iABC) /* OP_BXORK */ |
| 130 | ,opmode(0, 1, iABC) /* OP_SHRI */ | 130 | ,opmode(0, 0, 0, 1, iABC) /* OP_SHRI */ |
| 131 | ,opmode(0, 1, iABC) /* OP_SHLI */ | 131 | ,opmode(0, 0, 0, 1, iABC) /* OP_SHLI */ |
| 132 | ,opmode(0, 1, iABC) /* OP_ADD */ | 132 | ,opmode(0, 0, 0, 1, iABC) /* OP_ADD */ |
| 133 | ,opmode(0, 1, iABC) /* OP_SUB */ | 133 | ,opmode(0, 0, 0, 1, iABC) /* OP_SUB */ |
| 134 | ,opmode(0, 1, iABC) /* OP_MUL */ | 134 | ,opmode(0, 0, 0, 1, iABC) /* OP_MUL */ |
| 135 | ,opmode(0, 1, iABC) /* OP_MOD */ | 135 | ,opmode(0, 0, 0, 1, iABC) /* OP_MOD */ |
| 136 | ,opmode(0, 1, iABC) /* OP_POW */ | 136 | ,opmode(0, 0, 0, 1, iABC) /* OP_POW */ |
| 137 | ,opmode(0, 1, iABC) /* OP_DIV */ | 137 | ,opmode(0, 0, 0, 1, iABC) /* OP_DIV */ |
| 138 | ,opmode(0, 1, iABC) /* OP_IDIV */ | 138 | ,opmode(0, 0, 0, 1, iABC) /* OP_IDIV */ |
| 139 | ,opmode(0, 1, iABC) /* OP_BAND */ | 139 | ,opmode(0, 0, 0, 1, iABC) /* OP_BAND */ |
| 140 | ,opmode(0, 1, iABC) /* OP_BOR */ | 140 | ,opmode(0, 0, 0, 1, iABC) /* OP_BOR */ |
| 141 | ,opmode(0, 1, iABC) /* OP_BXOR */ | 141 | ,opmode(0, 0, 0, 1, iABC) /* OP_BXOR */ |
| 142 | ,opmode(0, 1, iABC) /* OP_SHL */ | 142 | ,opmode(0, 0, 0, 1, iABC) /* OP_SHL */ |
| 143 | ,opmode(0, 1, iABC) /* OP_SHR */ | 143 | ,opmode(0, 0, 0, 1, iABC) /* OP_SHR */ |
| 144 | ,opmode(0, 1, iABC) /* OP_UNM */ | 144 | ,opmode(0, 0, 0, 1, iABC) /* OP_UNM */ |
| 145 | ,opmode(0, 1, iABC) /* OP_BNOT */ | 145 | ,opmode(0, 0, 0, 1, iABC) /* OP_BNOT */ |
| 146 | ,opmode(0, 1, iABC) /* OP_NOT */ | 146 | ,opmode(0, 0, 0, 1, iABC) /* OP_NOT */ |
| 147 | ,opmode(0, 1, iABC) /* OP_LEN */ | 147 | ,opmode(0, 0, 0, 1, iABC) /* OP_LEN */ |
| 148 | ,opmode(0, 1, iABC) /* OP_CONCAT */ | 148 | ,opmode(0, 0, 0, 1, iABC) /* OP_CONCAT */ |
| 149 | ,opmode(0, 0, iABC) /* OP_CLOSE */ | 149 | ,opmode(0, 0, 0, 0, iABC) /* OP_CLOSE */ |
| 150 | ,opmode(0, 0, isJ) /* OP_JMP */ | 150 | ,opmode(0, 0, 0, 0, isJ) /* OP_JMP */ |
| 151 | ,opmode(1, 0, iABC) /* OP_EQ */ | 151 | ,opmode(0, 0, 1, 0, iABC) /* OP_EQ */ |
| 152 | ,opmode(1, 0, iABC) /* OP_LT */ | 152 | ,opmode(0, 0, 1, 0, iABC) /* OP_LT */ |
| 153 | ,opmode(1, 0, iABC) /* OP_LE */ | 153 | ,opmode(0, 0, 1, 0, iABC) /* OP_LE */ |
| 154 | ,opmode(1, 0, iABC) /* OP_EQK */ | 154 | ,opmode(0, 0, 1, 0, iABC) /* OP_EQK */ |
| 155 | ,opmode(1, 0, iABC) /* OP_EQI */ | 155 | ,opmode(0, 0, 1, 0, iABC) /* OP_EQI */ |
| 156 | ,opmode(1, 0, iABC) /* OP_LTI */ | 156 | ,opmode(0, 0, 1, 0, iABC) /* OP_LTI */ |
| 157 | ,opmode(1, 0, iABC) /* OP_LEI */ | 157 | ,opmode(0, 0, 1, 0, iABC) /* OP_LEI */ |
| 158 | ,opmode(1, 0, iABC) /* OP_TEST */ | 158 | ,opmode(0, 0, 1, 0, iABC) /* OP_TEST */ |
| 159 | ,opmode(1, 1, iABC) /* OP_TESTSET */ | 159 | ,opmode(0, 0, 1, 1, iABC) /* OP_TESTSET */ |
| 160 | ,opmode(0, 1, iABC) /* OP_CALL */ | 160 | ,opmode(1, 1, 0, 1, iABC) /* OP_CALL */ |
| 161 | ,opmode(0, 1, iABC) /* OP_TAILCALL */ | 161 | ,opmode(1, 1, 0, 1, iABC) /* OP_TAILCALL */ |
| 162 | ,opmode(0, 0, iABC) /* OP_RETURN */ | 162 | ,opmode(0, 1, 0, 0, iABC) /* OP_RETURN */ |
| 163 | ,opmode(0, 0, iABC) /* OP_RETURN0 */ | 163 | ,opmode(0, 0, 0, 0, iABC) /* OP_RETURN0 */ |
| 164 | ,opmode(0, 0, iABC) /* OP_RETURN1 */ | 164 | ,opmode(0, 0, 0, 0, iABC) /* OP_RETURN1 */ |
| 165 | ,opmode(0, 1, iABx) /* OP_FORLOOP1 */ | 165 | ,opmode(0, 0, 0, 1, iABx) /* OP_FORLOOP1 */ |
| 166 | ,opmode(0, 1, iABx) /* OP_FORPREP1 */ | 166 | ,opmode(0, 0, 0, 1, iABx) /* OP_FORPREP1 */ |
| 167 | ,opmode(0, 1, iABx) /* OP_FORLOOP */ | 167 | ,opmode(0, 0, 0, 1, iABx) /* OP_FORLOOP */ |
| 168 | ,opmode(0, 1, iABx) /* OP_FORPREP */ | 168 | ,opmode(0, 0, 0, 1, iABx) /* OP_FORPREP */ |
| 169 | ,opmode(0, 0, iABC) /* OP_TFORCALL */ | 169 | ,opmode(0, 0, 0, 0, iABC) /* OP_TFORCALL */ |
| 170 | ,opmode(0, 1, iABx) /* OP_TFORLOOP */ | 170 | ,opmode(0, 0, 0, 1, iABx) /* OP_TFORLOOP */ |
| 171 | ,opmode(0, 0, iABC) /* OP_SETLIST */ | 171 | ,opmode(0, 1, 0, 0, iABC) /* OP_SETLIST */ |
| 172 | ,opmode(0, 1, iABx) /* OP_CLOSURE */ | 172 | ,opmode(0, 0, 0, 1, iABx) /* OP_CLOSURE */ |
| 173 | ,opmode(0, 1, iABC) /* OP_VARARG */ | 173 | ,opmode(1, 0, 0, 1, iABC) /* OP_VARARG */ |
| 174 | ,opmode(0, 0, iAx) /* OP_EXTRAARG */ | 174 | ,opmode(0, 0, 0, 0, iAx) /* OP_EXTRAARG */ |
| 175 | }; | 175 | }; |
| 176 | 176 | ||
