Re: Bug#889848: Acknowledgement (ruby2.5: Please include upstream patch to fix FTBFS on ia64)
Oops, the previous patch contains some unnecessary cruft.
Attaching a cleaned-up version of the patch.
Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer - glaubitz@debian.org
`. `' Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Description: Fix FTBFS on ia64
Fix FTBFS on ia64.
Author: Sergei Trofimovich <slyfox@gentoo.org>
Origin: https://github.com/ruby/ruby/commit/5af43b1ec2674e9f86090790bc61abdb96be14ff
Last-Update: <YYYY-MM-DD>
--- ruby2.5-2.5.0.orig/cont.c
+++ ruby2.5-2.5.0/cont.c
@@ -475,7 +475,7 @@ cont_save_machine_stack(rb_thread_t *th,
SET_MACHINE_STACK_END(&th->ec->machine.stack_end);
#ifdef __ia64
- th->machine.register_stack_end = rb_ia64_bsp();
+ th->ec->machine.register_stack_end = rb_ia64_bsp();
#endif
if (th->ec->machine.stack_start > th->ec->machine.stack_end) {
@@ -499,8 +499,8 @@ cont_save_machine_stack(rb_thread_t *th,
#ifdef __ia64
rb_ia64_flushrs();
- size = cont->machine.register_stack_size = th->machine.register_stack_end - th->machine.register_stack_start;
- cont->machine.register_stack_src = th->machine.register_stack_start;
+ size = cont->machine.register_stack_size = th->ec->machine.register_stack_end - th->ec->machine.register_stack_start;
+ cont->machine.register_stack_src = th->ec->machine.register_stack_start;
if (cont->machine.register_stack) {
REALLOC_N(cont->machine.register_stack, VALUE, size);
}
--- ruby2.5-2.5.0.orig/thread.c
+++ ruby2.5-2.5.0/thread.c
@@ -132,7 +132,7 @@ static inline void blocking_region_end(r
#ifdef __ia64
#define RB_GC_SAVE_MACHINE_REGISTER_STACK(th) \
- do{(th)->machine.register_stack_end = rb_ia64_bsp();}while(0)
+ do{(th)->ec->machine.register_stack_end = rb_ia64_bsp();}while(0)
#else
#define RB_GC_SAVE_MACHINE_REGISTER_STACK(th)
#endif
Reply to: