mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-23 20:05:32 +02:00
* configure.in: New check for uca lib (needed for IA64 on HP-UX).
* threads.c (SCM_MARK_BACKING_STORE): Use scm_ia64_ar_bsp() and scm_ia64_register_backing_store_base() instead of Linux-specific implementations. * gc.h (scm_ia64_register_backing_store_base, scm_ia64_ar_bsp): New declarations. * gc.c (__libc_ia64_register_backing_store_base): Declaration removed. (scm_ia64_register_backing_store_base, scm_ia64_ar_bsp): New, with implementations for Linux and HP-UX. * coop-pthreads.c (SCM_MARK_BACKING_STORE): Use scm_ia64_ar_bsp() and scm_ia64_register_backing_store_base() instead of Linux-specific implementations. * continuations.h (__libc_ia64_register_backing_store_base): Declaration removed. (scm_t_contregs): New "fresh" field. * continuations.c (ia64_getcontext): Removed. (scm_make_continuation): Use continuation fresh field instead of interpreting getcontext return values (which isn't portable). Use scm_ia64_ar_bsp() and scm_ia64_register_backing_store_base() instead of Linux-specific implementations. (copy_stack_and_call): Use scm_ia64_register_backing_store_base() instead of Linux-specific implementation. * _scm.h (__ia64__): Also detect __ia64.
This commit is contained in:
parent
ba6984d09b
commit
9a5fa6e98a
10 changed files with 147 additions and 79 deletions
|
@ -27,7 +27,6 @@
|
|||
#ifdef __ia64__
|
||||
#include <signal.h>
|
||||
#include <ucontext.h>
|
||||
extern unsigned long * __libc_ia64_register_backing_store_base;
|
||||
#endif /* __ia64__ */
|
||||
|
||||
|
||||
|
@ -48,6 +47,7 @@ typedef struct
|
|||
SCM dynenv;
|
||||
#ifdef __ia64__
|
||||
ucontext_t ctx;
|
||||
int fresh;
|
||||
void *backing_store;
|
||||
unsigned long backing_store_size;
|
||||
#endif /* __ia64__ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue