aboutsummaryrefslogtreecommitdiff
path: root/lopcodes.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2017-09-13 16:50:08 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2017-09-13 16:50:08 -0300
commit80d9b09f351c7a9be557116e9c79ae11e9b3f032 (patch)
treea6ae7cce019e85c2f79987035c77d4e4213d07a9 /lopcodes.h
parent029d269f4d1afd0e9ea0f889eb3e65a7f0fab0f9 (diff)
downloadlua-80d9b09f351c7a9be557116e9c79ae11e9b3f032.tar.gz
lua-80d9b09f351c7a9be557116e9c79ae11e9b3f032.tar.bz2
lua-80d9b09f351c7a9be557116e9c79ae11e9b3f032.zip
jumps do not close upvalues (to be faster and simpler);
explicit instruction to close upvalues; command 'break' not handled like a 'goto' (to optimize removal of uneeded 'close' instructions)
Diffstat (limited to 'lopcodes.h')
-rw-r--r--lopcodes.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/lopcodes.h b/lopcodes.h
index f35de02a..4dfe66ce 100644
--- a/lopcodes.h
+++ b/lopcodes.h
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lopcodes.h,v 1.155 2017/06/29 15:38:41 roberto Exp roberto $ 2** $Id: lopcodes.h,v 1.156 2017/08/14 18:33:14 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*/
@@ -217,7 +217,8 @@ OP_LEN,/* A B R(A) := length of R(B) */
217 217
218OP_CONCAT,/* A B C R(A) := R(B).. ... ..R(C) */ 218OP_CONCAT,/* A B C R(A) := R(B).. ... ..R(C) */
219 219
220OP_JMP,/* A sBx pc+=sBx; if (A) close all upvalues >= R(A - 1) */ 220OP_CLOSE,/* A close all upvalues >= R(A) */
221OP_JMP,/* sBx pc+=sBx */
221OP_EQ,/* A B C if ((RK(B) == RK(C)) ~= A) then pc++ */ 222OP_EQ,/* A B C if ((RK(B) == RK(C)) ~= A) then pc++ */
222OP_LT,/* A B C if ((RK(B) < RK(C)) ~= A) then pc++ */ 223OP_LT,/* A B C if ((RK(B) < RK(C)) ~= A) then pc++ */
223OP_LE,/* A B C if ((RK(B) <= RK(C)) ~= A) then pc++ */ 224OP_LE,/* A B C if ((RK(B) <= RK(C)) ~= A) then pc++ */