aboutsummaryrefslogtreecommitdiff
path: root/lopcodes.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2017-04-28 17:57:45 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2017-04-28 17:57:45 -0300
commit502a1d1108d4e3b97e012d2ed9a496fd003b08db (patch)
tree0d1daa63ebe8af89a35ec5ecbc48f7e055eb0374 /lopcodes.c
parent173e41b2ebed59a716d299470de25e50aee3b921 (diff)
downloadlua-502a1d1108d4e3b97e012d2ed9a496fd003b08db.tar.gz
lua-502a1d1108d4e3b97e012d2ed9a496fd003b08db.tar.bz2
lua-502a1d1108d4e3b97e012d2ed9a496fd003b08db.zip
new opcodes for table access with constant keys (strings and integers)
Diffstat (limited to 'lopcodes.c')
-rw-r--r--lopcodes.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/lopcodes.c b/lopcodes.c
index f66f209a..1ffc52c9 100644
--- a/lopcodes.c
+++ b/lopcodes.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lopcodes.c,v 1.56 2017/04/20 19:53:55 roberto Exp roberto $ 2** $Id: lopcodes.c,v 1.57 2017/04/26 17:46:52 roberto Exp roberto $
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*/
@@ -25,11 +25,15 @@ LUAI_DDEF const char *const luaP_opnames[NUM_OPCODES+1] = {
25 "LOADBOOL", 25 "LOADBOOL",
26 "LOADNIL", 26 "LOADNIL",
27 "GETUPVAL", 27 "GETUPVAL",
28 "SETUPVAL",
28 "GETTABUP", 29 "GETTABUP",
29 "GETTABLE", 30 "GETTABLE",
31 "GETI",
32 "GETFIELD",
30 "SETTABUP", 33 "SETTABUP",
31 "SETUPVAL",
32 "SETTABLE", 34 "SETTABLE",
35 "SETI",
36 "SETFIELD",
33 "NEWTABLE", 37 "NEWTABLE",
34 "SELF", 38 "SELF",
35 "ADDI", 39 "ADDI",
@@ -82,11 +86,15 @@ LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = {
82 ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */ 86 ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */
83 ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_LOADNIL */ 87 ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_LOADNIL */
84 ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */ 88 ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */
89 ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */
85 ,opmode(0, 1, OpArgU, OpArgK, iABC) /* OP_GETTABUP */ 90 ,opmode(0, 1, OpArgU, OpArgK, iABC) /* OP_GETTABUP */
86 ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETTABLE */ 91 ,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_GETTABLE */
92 ,opmode(0, 1, OpArgR, OpArgU, iABC) /* OP_GETI */
93 ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETFIELD */
87 ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABUP */ 94 ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABUP */
88 ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */ 95 ,opmode(0, 0, OpArgR, OpArgK, iABC) /* OP_SETTABLE */
89 ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABLE */ 96 ,opmode(0, 0, OpArgU, OpArgK, iABC) /* OP_SETI */
97 ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETFIELD */
90 ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */ 98 ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */
91 ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */ 99 ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */
92 ,opmode(0, 1, OpArgR, OpArgU, iABC) /* OP_ADDI */ 100 ,opmode(0, 1, OpArgR, OpArgU, iABC) /* OP_ADDI */