aboutsummaryrefslogtreecommitdiff
path: root/lgc.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2020-08-07 14:45:20 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2020-08-07 14:45:20 -0300
commitf13dc59416afa8fc93bb3d784d1a73e49e1b5b09 (patch)
tree4719b653c8cbb3e0651e97ebb7acb96ac3a7a13d /lgc.h
parent7c3cb71fa48fbe84d9d9c664eb646446fb80898b (diff)
downloadlua-f13dc59416afa8fc93bb3d784d1a73e49e1b5b09.tar.gz
lua-f13dc59416afa8fc93bb3d784d1a73e49e1b5b09.tar.bz2
lua-f13dc59416afa8fc93bb3d784d1a73e49e1b5b09.zip
Better tests for gray lists
Test uses an extra bit in 'marked' to mark all elements in gray lists and then check against elements colored gray.
Diffstat (limited to 'lgc.h')
-rw-r--r--lgc.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/lgc.h b/lgc.h
index f571fd2b..0508cd1d 100644
--- a/lgc.h
+++ b/lgc.h
@@ -69,13 +69,16 @@
69 69
70/* 70/*
71** Layout for bit use in 'marked' field. First three bits are 71** Layout for bit use in 'marked' field. First three bits are
72** used for object "age" in generational mode. 72** used for object "age" in generational mode. Last bit is used
73** by tests.
73*/ 74*/
74#define WHITE0BIT 3 /* object is white (type 0) */ 75#define WHITE0BIT 3 /* object is white (type 0) */
75#define WHITE1BIT 4 /* object is white (type 1) */ 76#define WHITE1BIT 4 /* object is white (type 1) */
76#define BLACKBIT 5 /* object is black */ 77#define BLACKBIT 5 /* object is black */
77#define FINALIZEDBIT 6 /* object has been marked for finalization */ 78#define FINALIZEDBIT 6 /* object has been marked for finalization */
78 79
80#define TESTBIT 7
81
79 82
80 83
81#define WHITEBITS bit2mask(WHITE0BIT, WHITE1BIT) 84#define WHITEBITS bit2mask(WHITE0BIT, WHITE1BIT)