diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2012-10-28 10:43:31 -0700 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2012-10-28 10:43:31 -0700 |
| commit | 69e2d272457f2f096c2514d8afb90006ed577fc9 (patch) | |
| tree | cda613d41422a763d824ce998b0e6d0cefd4aaa3 /src/vm.c | |
| parent | 559933f577d5073464aa06facc1b754de6225d8a (diff) | |
| parent | 1933e2660c86c0731806993a9a212116bb454622 (diff) | |
| download | mruby-69e2d272457f2f096c2514d8afb90006ed577fc9.tar.gz mruby-69e2d272457f2f096c2514d8afb90006ed577fc9.zip | |
Merge pull request #507 from monaka/pr-not-use-memset-in-structure-initialization
Use substitution instead of memset in structure initializations.
Diffstat (limited to 'src/vm.c')
| -rw-r--r-- | src/vm.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -100,15 +100,16 @@ stack_extend(mrb_state *mrb, int room, int keep) envadjust(mrb, oldbase, mrb->stbase); } if (room > keep) { -#ifndef MRB_NAN_BOXING - memset(mrb->stack+keep, 0, sizeof(mrb_value) * (room-keep)); -#else int i; for (i=keep; i<room; i++) { +#ifndef MRB_NAN_BOXING + static const mrb_value mrb_value_zero = { { 0 } }; + mrb->stack[i] = mrb_value_zero; +#else SET_NIL_VALUE(mrb->stack[i]); - } #endif + } } } |
