diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2020-09-21 10:31:03 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2020-10-12 12:29:09 -0300 |
commit | 5d8ce05b3f6fad79e37ed21c1076e47a322472c6 (patch) | |
tree | 7629a59887da63d44267e872bc8e33be6db36582 /lstate.h | |
parent | f83de8e34e24e30acf277f60de62a33bd51d1ddd (diff) | |
download | lua-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.h | 7 |
1 files changed, 0 insertions, 7 deletions
@@ -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); | |||
389 | LUAI_FUNC CallInfo *luaE_extendCI (lua_State *L); | 383 | LUAI_FUNC CallInfo *luaE_extendCI (lua_State *L); |
390 | LUAI_FUNC void luaE_freeCI (lua_State *L); | 384 | LUAI_FUNC void luaE_freeCI (lua_State *L); |
391 | LUAI_FUNC void luaE_shrinkCI (lua_State *L); | 385 | LUAI_FUNC void luaE_shrinkCI (lua_State *L); |
392 | LUAI_FUNC void luaE_enterCcall (lua_State *L); | ||
393 | LUAI_FUNC void luaE_warning (lua_State *L, const char *msg, int tocont); | 386 | LUAI_FUNC void luaE_warning (lua_State *L, const char *msg, int tocont); |
394 | LUAI_FUNC void luaE_warnerror (lua_State *L, const char *where); | 387 | LUAI_FUNC void luaE_warnerror (lua_State *L, const char *where); |
395 | 388 | ||