diff options
author | Jemma Issroff <jemmaissroff@gmail.com> | 2023-01-25 13:45:32 -0500 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2023-01-25 14:48:28 -0500 |
commit | 78fcc9847a9db6d42c8c263154ec05903a370b6b (patch) | |
tree | e310032c5be7cf4ab698bf8cb530c5f69f3b9bac /shape.h | |
parent | 5e1e5af2e737bdc5537b4d2025d2ae8e57df3cdb (diff) |
Limit maximum number of IVs on a shape
Create SHAPE_MAX_NUM_IVS (currently 50) and limit all shapes to that
number of IVs. When a shape has more than 50 IVs, fallback to the
obj_too_complex shape which uses hash lookup for ivs.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/7183
Diffstat (limited to 'shape.h')
-rw-r--r-- | shape.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -31,6 +31,7 @@ typedef uint16_t shape_id_t; # define SHAPE_BITMAP_SIZE 16384 # define SHAPE_MAX_VARIATIONS 8 +# define SHAPE_MAX_NUM_IVS 50 # define MAX_SHAPE_ID (SHAPE_MASK - 1) # define INVALID_SHAPE_ID SHAPE_MASK |