diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-10-21 02:50:23 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-10-21 02:50:23 +0000 |
commit | c0766464e9ef13418cc719acd674f363b79db29a (patch) | |
tree | c2c46cd2bdcc5004450881308e32953fea98063b /gc.c | |
parent | b3943565791c1c6a5d4dc3a311ac09a6bad3f9a1 (diff) | |
download | ruby-c0766464e9ef13418cc719acd674f363b79db29a.tar.gz |
* gc.c (mark_current_machine_context) [__mc68000__]: Update stack
marking.
(rb_gc_mark_machine_stack) [__mc68000__]: Also handle it here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -3838,8 +3838,8 @@ mark_current_machine_context(rb_objspace_t *objspace, rb_thread_t *th) rb_gc_mark_locations(th->machine.register_stack_start, th->machine.register_stack_end); #endif #if defined(__mc68000__) - mark_locations_array(objspace, (VALUE*)((char*)STACK_END + 2), - (STACK_START - STACK_END)); + rb_gc_mark_locations((VALUE*)((char*)stack_start + 2), + (VALUE*)((char*)stack_end - 2)); #endif } @@ -3854,6 +3854,10 @@ rb_gc_mark_machine_stack(rb_thread_t *th) #ifdef __ia64 rb_gc_mark_locations(th->machine.register_stack_start, th->machine.register_stack_end); #endif +#if defined(__mc68000__) + rb_gc_mark_locations((VALUE*)((char*)stack_start + 2), + (VALUE*)((char*)stack_end - 2)); +#endif } void |