aboutsummaryrefslogtreecommitdiff
path: root/llimits.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2023-12-20 11:06:27 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2023-12-20 11:06:27 -0300
commit666e95a66d1a2ceb98bdf320980b3f655264a9c9 (patch)
tree663862abbb42c78f6bc31f7975777e60f8340ebe /llimits.h
parent4eda1acafa1a69224b2d4f786cf1ec8f7a4d9ac5 (diff)
downloadlua-666e95a66d1a2ceb98bdf320980b3f655264a9c9.tar.gz
lua-666e95a66d1a2ceb98bdf320980b3f655264a9c9.tar.bz2
lua-666e95a66d1a2ceb98bdf320980b3f655264a9c9.zip
Option 0 for step multiplier makes GC non-incremental
Diffstat (limited to 'llimits.h')
-rw-r--r--llimits.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/llimits.h b/llimits.h
index 47dee9a6..3bcd1b7f 100644
--- a/llimits.h
+++ b/llimits.h
@@ -33,7 +33,8 @@ typedef unsigned long lu_mem;
33typedef long l_obj; 33typedef long l_obj;
34#endif /* } */ 34#endif /* } */
35 35
36#define MAX_LOBJ cast(l_obj, ~cast(lu_mem, 0) >> 1) 36#define MAX_LOBJ \
37 cast(l_obj, (cast(lu_mem, 1) << (sizeof(l_obj) * CHAR_BIT - 1)) - 1)
37 38
38 39
39/* chars used as small naturals (so that 'char' is reserved for characters) */ 40/* chars used as small naturals (so that 'char' is reserved for characters) */
@@ -44,7 +45,10 @@ typedef signed char ls_byte;
44/* maximum value for size_t */ 45/* maximum value for size_t */
45#define MAX_SIZET ((size_t)(~(size_t)0)) 46#define MAX_SIZET ((size_t)(~(size_t)0))
46 47
47/* maximum size visible for Lua (must be representable in a lua_Integer) */ 48/*
49** Maximum size for strings and userdata visible for Lua (should be
50** representable in a lua_Integer)
51*/
48#define MAX_SIZE (sizeof(size_t) < sizeof(lua_Integer) ? MAX_SIZET \ 52#define MAX_SIZE (sizeof(size_t) < sizeof(lua_Integer) ? MAX_SIZET \
49 : (size_t)(LUA_MAXINTEGER)) 53 : (size_t)(LUA_MAXINTEGER))
50 54