summaryrefslogtreecommitdiff
path: root/data/ruby/stackend.diff
blob: 2bbb5fe40ad4c0b5b87f1e7f2aadd9948ca2112e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
diff -ru ruby-1.8.6-p111/gc.c ruby-1.8.6-p111+iPhone/gc.c
--- ruby-1.8.6-p111/gc.c	2007-03-03 07:30:46.000000000 +0000
+++ ruby-1.8.6-p111+iPhone/gc.c	2008-01-14 10:08:59.000000000 +0000
@@ -1365,7 +1367,7 @@
     setjmp(save_regs_gc_mark);
     mark_locations_array((VALUE*)save_regs_gc_mark, sizeof(save_regs_gc_mark) / sizeof(VALUE *));
 #if STACK_GROW_DIRECTION < 0
-    rb_gc_mark_locations((VALUE*)STACK_END, rb_gc_stack_start);
+    rb_gc_mark_locations((VALUE*)((uintptr_t)STACK_END & ~0xf), rb_gc_stack_start);
 #elif STACK_GROW_DIRECTION > 0
     rb_gc_mark_locations(rb_gc_stack_start, (VALUE*)STACK_END + 1);
 #else