aboutsummaryrefslogtreecommitdiff
path: root/lcode.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 /lcode.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 'lcode.h')
-rw-r--r--lcode.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/lcode.h b/lcode.h
index e7ff3522..70953559 100644
--- a/lcode.h
+++ b/lcode.h
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lcode.h,v 1.64 2016/01/05 16:22:37 roberto Exp roberto $ 2** $Id: lcode.h,v 1.65 2017/04/20 19:53:55 roberto Exp roberto $
3** Code generator for Lua 3** Code generator for Lua
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -73,8 +73,10 @@ LUAI_FUNC void luaK_setoneret (FuncState *fs, expdesc *e);
73LUAI_FUNC int luaK_jump (FuncState *fs); 73LUAI_FUNC int luaK_jump (FuncState *fs);
74LUAI_FUNC void luaK_ret (FuncState *fs, int first, int nret); 74LUAI_FUNC void luaK_ret (FuncState *fs, int first, int nret);
75LUAI_FUNC void luaK_patchlist (FuncState *fs, int list, int target); 75LUAI_FUNC void luaK_patchlist (FuncState *fs, int list, int target);
76void luaK_patchgoto (FuncState *fs, int list, int target, int hasclose);
76LUAI_FUNC void luaK_patchtohere (FuncState *fs, int list); 77LUAI_FUNC void luaK_patchtohere (FuncState *fs, int list);
77LUAI_FUNC void luaK_patchclose (FuncState *fs, int list, int level); 78LUAI_FUNC void luaK_patchclose (FuncState *fs, int list);
79LUAI_FUNC int luaK_needclose (FuncState *fs, int list);
78LUAI_FUNC void luaK_concat (FuncState *fs, int *l1, int l2); 80LUAI_FUNC void luaK_concat (FuncState *fs, int *l1, int l2);
79LUAI_FUNC int luaK_getlabel (FuncState *fs); 81LUAI_FUNC int luaK_getlabel (FuncState *fs);
80LUAI_FUNC void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v, int line); 82LUAI_FUNC void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v, int line);