diff options
author | Aaron Patterson <[email protected]> | 2023-03-17 11:39:35 -0700 |
---|---|---|
committer | Aaron Patterson <[email protected]> | 2023-03-22 08:46:12 -0700 |
commit | 1a9e2d20e2c66933f8eb891a1ee85fae6015fcf1 () | |
tree | 281d6536edd16ee9ece6971462f27fcf70151550 /shape.h | |
parent | e340eb2106544dffe909104df1ff61236f70f280 (diff) |
Fix shape allocation limits
We can only allocate enough shapes to fit in the shape buffer. MAX_SHAPE_ID was based on the theoretical maximum number of shapes we could have, not on the amount of memory we can actually consume. This commit changes the MAX_SHAPE_ID to be based on the amount of memory we're allowed to consume. Co-Authored-By: Jemma Issroff <[email protected]>
Notes: Merged: https://.com/ruby/ruby/pull/7556
-rw-r--r-- | shape.h | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -28,12 +28,12 @@ typedef uint16_t shape_id_t; # define SHAPE_FLAG_SHIFT ((SIZEOF_VALUE * 8) - SHAPE_ID_NUM_BITS) -# define SHAPE_BITMAP_SIZE 16384 # define SHAPE_MAX_VARIATIONS 8 # define SHAPE_MAX_NUM_IVS 80 -# define MAX_SHAPE_ID (SHAPE_MASK - 1) # define INVALID_SHAPE_ID SHAPE_MASK # define ROOT_SHAPE_ID 0x0 |