aboutsummaryrefslogtreecommitdiff
path: root/lstate.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2020-09-21 10:31:03 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2020-10-12 12:29:09 -0300
commit5d8ce05b3f6fad79e37ed21c1076e47a322472c6 (patch)
tree7629a59887da63d44267e872bc8e33be6db36582 /lstate.h
parentf83de8e34e24e30acf277f60de62a33bd51d1ddd (diff)
downloadlua-5d8ce05b3f6fad79e37ed21c1076e47a322472c6.tar.gz
lua-5d8ce05b3f6fad79e37ed21c1076e47a322472c6.tar.bz2
lua-5d8ce05b3f6fad79e37ed21c1076e47a322472c6.zip
Back to a stackless implementation
A "with stack" implementation gains too little in performance to be worth all the noise from C-stack overflows. This commit is almost a sketch, to test performance. There are several pending stuff: - review control of C-stack overflow and error messages; - what to do with setcstacklimit; - review comments; - review unroll of Lua calls.
Diffstat (limited to 'lstate.h')
-rw-r--r--lstate.h7
1 files changed, 0 insertions, 7 deletions
diff --git a/lstate.h b/lstate.h
index c1c38204..983aa0d5 100644
--- a/lstate.h
+++ b/lstate.h
@@ -144,12 +144,6 @@
144/* Decrement the number of non-yieldable calls */ 144/* Decrement the number of non-yieldable calls */
145#define decnny(L) ((L)->nCcalls -= 0x10000) 145#define decnny(L) ((L)->nCcalls -= 0x10000)
146 146
147/* Increment the number of non-yieldable calls and decrement nCcalls */
148#define incXCcalls(L) ((L)->nCcalls += 0x10000 - CSTACKCF)
149
150/* Decrement the number of non-yieldable calls and increment nCcalls */
151#define decXCcalls(L) ((L)->nCcalls -= 0x10000 - CSTACKCF)
152
153 147
154 148
155 149
@@ -389,7 +383,6 @@ LUAI_FUNC void luaE_freethread (lua_State *L, lua_State *L1);
389LUAI_FUNC CallInfo *luaE_extendCI (lua_State *L); 383LUAI_FUNC CallInfo *luaE_extendCI (lua_State *L);
390LUAI_FUNC void luaE_freeCI (lua_State *L); 384LUAI_FUNC void luaE_freeCI (lua_State *L);
391LUAI_FUNC void luaE_shrinkCI (lua_State *L); 385LUAI_FUNC void luaE_shrinkCI (lua_State *L);
392LUAI_FUNC void luaE_enterCcall (lua_State *L);
393LUAI_FUNC void luaE_warning (lua_State *L, const char *msg, int tocont); 386LUAI_FUNC void luaE_warning (lua_State *L, const char *msg, int tocont);
394LUAI_FUNC void luaE_warnerror (lua_State *L, const char *where); 387LUAI_FUNC void luaE_warnerror (lua_State *L, const char *where);
395 388