ruby-changes:66651
From: Peter <ko1@a...>
Date: Thu, 1 Jul 2021 05:12:24 +0900 (JST)
Subject: [ruby-changes:66651] 4a3df35239 (master): Use stride passed into os_obj_of_i
https://git.ruby-lang.org/ruby.git/commit/?id=4a3df35239 From 4a3df35239b122f9260fd4ca2b844b9d41f61225 Mon Sep 17 00:00:00 2001 From: Peter Zhu <peter@p...> Date: Wed, 30 Jun 2021 15:24:22 -0400 Subject: Use stride passed into os_obj_of_i --- gc.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gc.c b/gc.c index b022910..bdac2b9 100644 --- a/gc.c +++ b/gc.c @@ -3728,10 +3728,9 @@ static int https://github.com/ruby/ruby/blob/trunk/gc.c#L3728 os_obj_of_i(void *vstart, void *vend, size_t stride, void *data) { struct os_each_struct *oes = (struct os_each_struct *)data; - RVALUE *p = (RVALUE *)vstart, *pend = (RVALUE *)vend; - for (; p != pend; p++) { - volatile VALUE v = (VALUE)p; + VALUE v = (VALUE)vstart; + for (; v != (VALUE)vend; v += stride) { if (!internal_object_p(v)) { if (!oes->of || rb_obj_is_kind_of(v, oes->of)) { if (!rb_multi_ractor_p() || rb_ractor_shareable_p(v)) { -- cgit v1.1 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/