Roberto Ierusalimschy
81102d3689
try to avoid warnings when converting int to pointer
12 years ago
Roberto Ierusalimschy
0ce3018109
'pushnum' pushes a "number" (float) + new C instruction 'pushint'
12 years ago
Roberto Ierusalimschy
a2f5c28a80
new operation '//' (integer division)
12 years ago
Roberto Ierusalimschy
52cb90ec75
detail
12 years ago
Roberto Ierusalimschy
75250a237c
typos in comments
12 years ago
Roberto Ierusalimschy
86b39206d9
open upvalues cannot be old if thread is not old; when thread is old,
their list is not traversed anymore, and therefore can contain dead
elements.
12 years ago
Roberto Ierusalimschy
a3e1c40d6d
remove of unecessary luaD_checkstack. (In some cases, C should
ensure stack space; in others, Lua can use the extra slots for
temporary values.)
12 years ago
Roberto Ierusalimschy
e4f609d0ee
collector in generational mode must be in 'propagate' state when
not running a collection
13 years ago
Roberto Ierusalimschy
5ac56a94dd
collector in generational mode should never be in 'pause' state
13 years ago
Roberto Ierusalimschy
43bfb60ac8
new auxiliary function 'luaI_printinst' (to print a single instruction)
13 years ago
Roberto Ierusalimschy
01e5f358bd
small improvement in lua_checkmemory (only allow dead objects in
part of the sweep list not yet sweeped)
13 years ago
Roberto Ierusalimschy
69c775de21
update of 'lua_checkmemory'
13 years ago
Roberto Ierusalimschy
3cadc37f47
no more 'Proto' objects on the stack. Protos are anchored on outer
Protos or on a Closure, which must be created before the Proto.
13 years ago
Roberto Ierusalimschy
a4b96ce9a3
first implementation of long strings
13 years ago
Roberto Ierusalimschy
fd22ccd6d0
object tag keeps variant bits too -> no need for 'isC' field in
Closures + more strick typing for closure variants
13 years ago
Roberto Ierusalimschy
e0e406ead3
extra argument to instruction 'checkstack' (in 'testC')
13 years ago
Roberto Ierusalimschy
5645a84368
detail about 'trick' function (nil turn it off)
13 years ago
Roberto Ierusalimschy
3dc5475e23
'nCcalls' should be local to each thread, as each thread may have its
own C stack (with LuaThreads or something similar)
13 years ago
Roberto Ierusalimschy
88c29c0cd5
compilation warning about integer size x pointer size
14 years ago
Roberto Ierusalimschy
29644366fc
useless assignments removed (macros already do the assignment)
14 years ago
Roberto Ierusalimschy
3b44821334
stricter control (using tag variants) over closure kinds (Lua x C)
14 years ago
Roberto Ierusalimschy
aa13c591f5
avoid use of 'ifdef/ifndef'; use 'defined' instead (simpler and
more powerful)
14 years ago
Roberto Ierusalimschy
e4076fe6d9
break long assertion in two shorter ones
14 years ago
Roberto Ierusalimschy
19fbdf6cae
'luaL_findtable' -> 'luaL_getsubtable'
14 years ago
Roberto Ierusalimschy
75d8470f0f
new macro 'cast_uchar'
14 years ago
Roberto Ierusalimschy
9b7a12c46d
finalizers (__gc) for tables
14 years ago
Roberto Ierusalimschy
50334faad6
no more compatibility with (veryyyy) old ref system
14 years ago
Roberto Ierusalimschy
d447945685
'module'/'luaL_register' and associates are deprecated
14 years ago
Roberto Ierusalimschy
7192afafee
new module policy: C modules do not create globals and do not register
themselves with 'require' (let 'require' do its work); new auxiliary
functions luaL_newlib/luaL_newlibtable/luaL_setfuncs/luaL_requiref.
Old luaL_register will be deprecated.
15 years ago
Roberto Ierusalimschy
d9ea6eca7c
macro 'key2tal' replaced by 'gkey' (as both were equal)
15 years ago
Roberto Ierusalimschy
bd262d591f
'coroutine' library separated from 'baselib'
15 years ago
Roberto Ierusalimschy
3d80aeab5a
lua_pushstring may reallocate the stack, making 'o' a dangling
pointer
15 years ago
Roberto Ierusalimschy
69ba1ac441
new "instruction" 'absindex'
15 years ago
Roberto Ierusalimschy
de0f51a02c
wrong type being assigned (not detected because of obj2gco macro)
15 years ago
Roberto Ierusalimschy
0567221848
udata in 'tobefnz' list be have old bit on (it will be cleared
when udata is moved to 'allgc' list)
15 years ago
Roberto Ierusalimschy
fa2ddb070a
details (to avoid too long strings in assertions)
15 years ago
Roberto Ierusalimschy
9c1347e647
more tests in 'lua_checkmemory' + more information in function
'gccolor'
15 years ago
Roberto Ierusalimschy
8c583c61a3
more tests in 'lua_checkmemory'
15 years ago
Roberto Ierusalimschy
0c27de2e7b
no more 'finalize' phase in GC; finalizers are called along the
entire cycle
15 years ago
Roberto Ierusalimschy
d25f7f9d78
items in 'tobefnz' are kept black (as before recent change) and changed
to white only when needed (being moved to 'allgc' when not keeping
invariant).
15 years ago
Roberto Ierusalimschy
4d871ee973
"gray lists" only need to be valid when 'keepinvariant' is true
15 years ago
Roberto Ierusalimschy
5d79c6684b
removed commented-out debugging code
15 years ago
Roberto Ierusalimschy
ee7478e884
improved 'lua_checkmemory', with better control over gray objects
15 years ago
Roberto Ierusalimschy
973d81efb3
complete control over number of each kind of object allocated
15 years ago
Roberto Ierusalimschy
1e6940f291
'gcstate' now also runs collector until given state + small changes
in 'testC' to test 'lua_topointer' and 'lua_tocfunction'
15 years ago
Roberto Ierusalimschy
7dfa4cd655
first implementation of light C functions
15 years ago
Roberto Ierusalimschy
b2dd246b7a
better control in 'totalmem' over choosing counters
15 years ago
Roberto Ierusalimschy
d41b467320
check memory allows strings to live in the main GC list (it should
work ok).
15 years ago
Roberto Ierusalimschy
a8d3aa14fd
global table now is only kept in the registry
15 years ago
Roberto Ierusalimschy
064e406f67
no more fenvs!
15 years ago