mirror of
https://github.com/lua/lua
synced 2024-11-22 04:41:23 +03:00
Merge branch 'master' into nextversion
This commit is contained in:
commit
ff106c028c
8
lgc.c
8
lgc.c
@ -1614,12 +1614,16 @@ static void incstep (lua_State *L, global_State *g) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** performs a basic GC step if collector is running
|
** Performs a basic GC step if collector is running. (If collector is
|
||||||
|
** not running, set a reasonable debt to avoid it being called at
|
||||||
|
** every single check.)
|
||||||
*/
|
*/
|
||||||
void luaC_step (lua_State *L) {
|
void luaC_step (lua_State *L) {
|
||||||
global_State *g = G(L);
|
global_State *g = G(L);
|
||||||
lua_assert(!g->gcemergency);
|
lua_assert(!g->gcemergency);
|
||||||
if (gcrunning(g)) { /* running? */
|
if (!gcrunning(g)) /* not running? */
|
||||||
|
luaE_setdebt(g, -2000);
|
||||||
|
else {
|
||||||
switch (g->gckind) {
|
switch (g->gckind) {
|
||||||
case KGC_INC:
|
case KGC_INC:
|
||||||
incstep(L, g);
|
incstep(L, g);
|
||||||
|
10
lmathlib.c
10
lmathlib.c
@ -267,7 +267,7 @@ static int math_type (lua_State *L) {
|
|||||||
|
|
||||||
/* try to find an integer type with at least 64 bits */
|
/* try to find an integer type with at least 64 bits */
|
||||||
|
|
||||||
#if (ULONG_MAX >> 31 >> 31) >= 3
|
#if ((ULONG_MAX >> 31) >> 31) >= 3
|
||||||
|
|
||||||
/* 'long' has at least 64 bits */
|
/* 'long' has at least 64 bits */
|
||||||
#define Rand64 unsigned long
|
#define Rand64 unsigned long
|
||||||
@ -277,9 +277,9 @@ static int math_type (lua_State *L) {
|
|||||||
/* there is a 'long long' type (which must have at least 64 bits) */
|
/* there is a 'long long' type (which must have at least 64 bits) */
|
||||||
#define Rand64 unsigned long long
|
#define Rand64 unsigned long long
|
||||||
|
|
||||||
#elif (LUA_MAXUNSIGNED >> 31 >> 31) >= 3
|
#elif ((LUA_MAXUNSIGNED >> 31) >> 31) >= 3
|
||||||
|
|
||||||
/* 'lua_Integer' has at least 64 bits */
|
/* 'lua_Unsigned' has at least 64 bits */
|
||||||
#define Rand64 lua_Unsigned
|
#define Rand64 lua_Unsigned
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -500,12 +500,12 @@ static lua_Number I2d (Rand64 x) {
|
|||||||
|
|
||||||
/* convert a 'Rand64' to a 'lua_Unsigned' */
|
/* convert a 'Rand64' to a 'lua_Unsigned' */
|
||||||
static lua_Unsigned I2UInt (Rand64 x) {
|
static lua_Unsigned I2UInt (Rand64 x) {
|
||||||
return ((lua_Unsigned)trim32(x.h) << 31 << 1) | (lua_Unsigned)trim32(x.l);
|
return (((lua_Unsigned)trim32(x.h) << 31) << 1) | (lua_Unsigned)trim32(x.l);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* convert a 'lua_Unsigned' to a 'Rand64' */
|
/* convert a 'lua_Unsigned' to a 'Rand64' */
|
||||||
static Rand64 Int2I (lua_Unsigned n) {
|
static Rand64 Int2I (lua_Unsigned n) {
|
||||||
return packI((lu_int32)(n >> 31 >> 1), (lu_int32)n);
|
return packI((lu_int32)((n >> 31) >> 1), (lu_int32)n);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* } */
|
#endif /* } */
|
||||||
|
Loading…
Reference in New Issue
Block a user