diff options
author | Peter Zhu <peter@peterzhu.ca> | 2023-04-11 09:16:52 -0400 |
---|---|---|
committer | Peter Zhu <peter@peterzhu.ca> | 2023-04-11 11:25:12 -0400 |
commit | b4571097df4a6bd848f1195026d82a92f3a7f9d8 (patch) | |
tree | 628a1ca1c063d9a634b7d8d3a69b9820c0c06a80 /internal | |
parent | 7297374c5e3dc2b66ee55d918b3f933e78dd23fd (diff) | |
download | ruby-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.h | 9 |
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; |