From d8cb827f39d4c72d2a79e40371ba2a4fb3e95b28 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Tue, 24 Oct 2023 12:43:22 -0700 Subject: Remove SHAPE_MAX_NUM_IVS There is no longer a limit on the number of IVs you can store. SHAPE_MAX_NUM_IVS was used to work around the IV10K problem (the well known problem where setting 10k instance variables in a row would be too slow). The redblack tree works well at any shape depth, even depths greater than 80, and solves the IV10K problem. --- shape.c | 1 - 1 file changed, 1 deletion(-) (limited to 'shape.c') diff --git a/shape.c b/shape.c index eecae3ee64..a2e2e4446d 100644 --- a/shape.c +++ b/shape.c @@ -1182,7 +1182,6 @@ Init_shape(void) rb_define_const(rb_cShape, "SPECIAL_CONST_SHAPE_ID", INT2NUM(SPECIAL_CONST_SHAPE_ID)); rb_define_const(rb_cShape, "OBJ_TOO_COMPLEX_SHAPE_ID", INT2NUM(OBJ_TOO_COMPLEX_SHAPE_ID)); rb_define_const(rb_cShape, "SHAPE_MAX_VARIATIONS", INT2NUM(SHAPE_MAX_VARIATIONS)); - rb_define_const(rb_cShape, "SHAPE_MAX_NUM_IVS", INT2NUM(SHAPE_MAX_NUM_IVS)); rb_define_singleton_method(rb_cShape, "transition_tree", shape_transition_tree, 0); rb_define_singleton_method(rb_cShape, "find_by_id", rb_shape_find_by_id, 1); -- cgit v1.2.3