summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2020-07-22 14:28:24 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2020-07-22 15:01:54 +0900
commit491aa1bfe5809146eec85b7d2915f3d389eb59b5 (patch)
tree0dc60e9a2560b75d98874ba6161f2446c0eecae7 /src
parentc99bb756c4d57df5466d4ff0b4749397041aab1a (diff)
downloadmruby-491aa1bfe5809146eec85b7d2915f3d389eb59b5.tar.gz
mruby-491aa1bfe5809146eec85b7d2915f3d389eb59b5.zip
Use more local variables.
To make debugging easy, and to improve the performance little bit.
Diffstat (limited to 'src')
-rw-r--r--src/gc.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gc.c b/src/gc.c
index d21b7f9fc..e92516ca7 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -730,10 +730,11 @@ gc_mark_children(mrb_state *mrb, mrb_gc *gc, struct RBasic *obj)
case MRB_TT_ARRAY:
{
struct RArray *a = (struct RArray*)obj;
- size_t i, e;
+ size_t i, e=ARY_LEN(a);
+ mrb_value *p = ARY_PTR(a);
- for (i=0,e=ARY_LEN(a); i<e; i++) {
- mrb_gc_mark_value(mrb, ARY_PTR(a)[i]);
+ for (i=0; i<e; i++) {
+ mrb_gc_mark_value(mrb, p[i]);
}
}
break;