summaryrefslogtreecommitdiff
path: root/shape.c
AgeCommit message (Expand)Author
2023-11-10Revert "Remove SHAPE_CAPACITY_CHANGE shapes"Peter Zhu
2023-11-09Remove SHAPE_CAPACITY_CHANGE shapesPeter Zhu
2023-11-08Refactor rb_shape_transition_shape_capa outJean Boussier
2023-11-03vm_getivar: assume the cached shape_id like have a common ancestorJean Boussier
2023-11-02Make every initial size pool shape a root shapePeter Zhu
2023-11-02Better handle running out of shapes in remove_shape_recursiveJean Boussier
2023-11-01remove_instance_variable: Handle running out of shapesJean Boussier
2023-10-31Add ST table to gen_ivtbl for complex shapesPeter Zhu
2023-10-31Handle running out of shapes in `Object#dup`Jean Boussier
2023-10-27Make get_next_shape_internal idempotentJean Boussier
2023-10-26Decrease redblack cache / shape size in debugAaron Patterson
2023-10-26Move some defines from shape.h to shape.cJean Boussier
2023-10-24Remove SHAPE_MAX_NUM_IVSAaron Patterson
2023-10-24`get_next_shape_internal` should always return a shapeAaron Patterson
2023-10-24Allow the shape tree to be traversedAaron Patterson
2023-10-24Remove new_shape_necessary codeAaron Patterson
2023-10-24golf down ancestor cachingAaron Patterson
2023-10-24Addressing feedbackAaron Patterson
2023-10-24Don't cache on platforms without mmapAaron Patterson
2023-10-24geniv objects can become too complexAaron Patterson
2023-10-24remove IV limit / support complex shapes on classesAaron Patterson
2023-10-24Use a functional red-black tree for indexing the shapesAaron Patterson
2023-10-23Adjust indent [ci skip]Nobuyoshi Nakada
2023-10-23rb_shape_transition_shape_capa: use optimal sizes transitionsJean Boussier
2023-10-10Refactor rb_shape_transition_shape_capa to not accept capacityJean Boussier
2023-05-20`rb_bug` prints a newline after the messageNobuyoshi Nakada
2023-05-03Make the maximum shapes variation warning non-verboseJean Boussier
2023-04-18Return NULL to indicate the next shape isn't foundAaron Patterson
2023-04-16Move shape ID to flags for classes on 32 bitPeter Zhu
2023-04-13Emit a performance warning when a class reached max variationsJean Boussier
2023-04-06[Feature #19474] Refactor NEWOBJ macrosMatt Valentine-House
2023-04-06Pull the shape tree out of the vm objectMatt Valentine-House
2023-03-22Lazily allocate id tables for childrenAaron Patterson
2023-03-22pull child allocation in to a different functionAaron Patterson
2023-03-22combine allocation functionsAaron Patterson
2023-03-22Make shape functions staticAaron Patterson
2023-03-22Fix shape allocation limitsAaron Patterson
2023-03-18Fix frozen status loss when moving objectsPeter Zhu
2023-03-10Revert "Allow classes and modules to become too complex"Aaron Patterson
2023-03-09Allow classes and modules to become too complexHParker
2023-03-06Resurrect symbols used by ObjectSpaceTakashi Kokubun
2023-03-06Stop exporting symbols for MJITTakashi Kokubun
2023-02-15Handle all non-object type objectsHaldun Bayhantopcu
2023-02-15Fix removing ivars from clases and modules.Haldun Bayhantopcu
2023-02-09Merge gc.h and internal/gc.hMatt Valentine-House
2023-02-06Limit maximum number of IVs on a shape on T_OBJECTSJemma Issroff
2023-01-30Remove dead code in shapes.c and shapes.hPeter Zhu
2023-01-26Revert "Limit maximum number of IVs on a shape"Aaron Patterson
2023-01-25Limit maximum number of IVs on a shapeJemma Issroff
2023-01-05Fix undefined behavior in shape.cPeter Zhu