summaryrefslogtreecommitdiff
path: root/data/ruby/stackend.diff
diff options
context:
space:
mode:
Diffstat (limited to 'data/ruby/stackend.diff')
-rw-r--r--data/ruby/stackend.diff12
1 files changed, 12 insertions, 0 deletions
diff --git a/data/ruby/stackend.diff b/data/ruby/stackend.diff
new file mode 100644
index 000000000..2bbb5fe40
--- /dev/null
+++ b/data/ruby/stackend.diff
@@ -0,0 +1,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