barrier for prototype's cache (with new gray list 'protogray' to keep

prototypes to have their caches visited again) + constant 'MAXMISS'
This commit is contained in:
Roberto Ierusalimschy
2017-05-04 10:32:01 -03:00
parent 8634b2a011
commit 2376eb6347
7 changed files with 95 additions and 22 deletions

View File

@@ -1,5 +1,5 @@
/*
** $Id: lfunc.h,v 2.15 2015/01/13 15:49:11 roberto Exp roberto $
** $Id: lfunc.h,v 2.16 2017/04/11 18:41:09 roberto Exp roberto $
** Auxiliary functions to manipulate prototypes and closures
** See Copyright Notice in lua.h
*/
@@ -32,6 +32,13 @@
#define upisopen(up) ((up)->v != &(up)->u.value)
/*
** maximum number of misses before giving up the cache of closures
** in prototypes
*/
#define MAXMISS 10
LUAI_FUNC Proto *luaF_newproto (lua_State *L);
LUAI_FUNC CClosure *luaF_newCclosure (lua_State *L, int nelems);
LUAI_FUNC LClosure *luaF_newLclosure (lua_State *L, int nelems);