summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorPeter Zhu <peter@peterzhu.ca>2023-04-11 09:16:52 -0400
committerPeter Zhu <peter@peterzhu.ca>2023-04-11 11:25:12 -0400
commitb4571097df4a6bd848f1195026d82a92f3a7f9d8 (patch)
tree628a1ca1c063d9a634b7d8d3a69b9820c0c06a80 /internal
parent7297374c5e3dc2b66ee55d918b3f933e78dd23fd (diff)
downloadruby-b4571097df4a6bd848f1195026d82a92f3a7f9d8.tar.gz
Enable 5 size pools on 32 bit systems
This commit will allow 32 bit systems to take advantage of VWA.
Diffstat (limited to 'internal')
-rw-r--r--internal/gc.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/internal/gc.h b/internal/gc.h
index 86f3f4ae17..bb0f8016fb 100644
--- a/internal/gc.h
+++ b/internal/gc.h
@@ -186,14 +186,11 @@ struct rb_objspace; /* in vm_core.h */
// We use SIZE_POOL_COUNT number of shape IDs for transitions out of different size pools
// The next available shape ID will be the SPECIAL_CONST_SHAPE_ID
#ifndef SIZE_POOL_COUNT
-# if (SIZEOF_UINT64_T == SIZEOF_VALUE)
-# define SIZE_POOL_COUNT 5
-# else
-# define SIZE_POOL_COUNT 1
-# endif
+# define SIZE_POOL_COUNT 5
#endif
-#define RCLASS_EXT_EMBEDDED (SIZE_POOL_COUNT > 1)
+// TODO: Make rb_classext_t small enough to fit in 80 bytes on 32 bit
+#define RCLASS_EXT_EMBEDDED (SIZEOF_UINT64_T == SIZEOF_VALUE)
typedef struct ractor_newobj_size_pool_cache {
struct RVALUE *freelist;