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.
This commit is contained in:
Roberto Ierusalimschy
2020-09-21 10:31:03 -03:00
parent f83de8e34e
commit 5d8ce05b3f
11 changed files with 72 additions and 95 deletions

View File

@@ -127,8 +127,8 @@ else
end
Cstacklevel = function ()
local _, _, ncalls, nci = T.stacklevel()
return ncalls + nci -- number of free slots in the C stack
local _, _, ncalls = T.stacklevel()
return ncalls -- number of C calls
end
end