Oops, the previous patch contains some unnecessary cruft. Attaching a cleaned-up version of the patch.
Adrian -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer - [email protected] `. `' Freie Universitaet Berlin - [email protected] `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Description: Fix FTBFS on ia64 Fix FTBFS on ia64. Author: Sergei Trofimovich <[email protected]> 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

