diff options
| author | Peter Zhu <peter@peterzhu.ca> | 2025-09-09 09:18:50 -0400 |
|---|---|---|
| committer | Peter Zhu <peter@peterzhu.ca> | 2025-09-11 10:17:31 -0400 |
| commit | 17039c566b76854c8246b4a4feb2f5bd2ebf8447 (patch) | |
| tree | dc53537f02f41210b6f7977dd595aa317e2baa03 | |
| parent | aa173bcef826adfb84718314f4d0b4547b118730 (diff) | |
Don't include klass in RZombie
klass is not used, so we can shrink RZombie down to 32 bytes.
| -rw-r--r-- | gc/default/default.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gc/default/default.c b/gc/default/default.c index aa06b7cc06..d5b18d20b9 100644 --- a/gc/default/default.c +++ b/gc/default/default.c @@ -993,7 +993,7 @@ total_final_slots_count(rb_objspace_t *objspace) #endif struct RZombie { - struct RBasic basic; + VALUE flags; VALUE next; void (*dfree)(void *); void *data; @@ -2586,7 +2586,7 @@ rb_gc_impl_make_zombie(void *objspace_ptr, VALUE obj, void (*dfree)(void *), voi rb_objspace_t *objspace = objspace_ptr; struct RZombie *zombie = RZOMBIE(obj); - zombie->basic.flags = T_ZOMBIE | (zombie->basic.flags & ZOMBIE_OBJ_KEPT_FLAGS); + zombie->flags = T_ZOMBIE | (zombie->flags & ZOMBIE_OBJ_KEPT_FLAGS); zombie->dfree = dfree; zombie->data = data; VALUE prev, next = heap_pages_deferred_final; |
