diff --git a/libguile/continuations.c b/libguile/continuations.c index bf51d59a4..db30bddd6 100644 --- a/libguile/continuations.c +++ b/libguile/continuations.c @@ -120,8 +120,7 @@ struct rv long retval; long first_return; }; -extern struct rv getcontext (ucontext_t *); -extern int setcontext (ucontext_t *); +extern struct rv ia64_getcontext (ucontext_t *) __asm__ ("getcontext"); #endif /* __ia64__ */ /* this may return more than once: the first time with the escape @@ -163,7 +162,7 @@ scm_make_continuation (int *first) memcpy (continuation->stack, src, sizeof (SCM_STACKITEM) * stack_size); #ifdef __ia64__ - rv = getcontext (&continuation->ctx); + rv = ia64_getcontext (&continuation->ctx); if (rv.first_return) { continuation->backing_store_size = diff --git a/libguile/continuations.h b/libguile/continuations.h index f43b9e2e0..1ad479549 100644 --- a/libguile/continuations.h +++ b/libguile/continuations.h @@ -2,7 +2,7 @@ #ifndef CONTINUATIONSH #define CONTINUATIONSH -/* Copyright (C) 1995,1996, 2000, 2001 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996, 2000, 2001, 2003 Free Software Foundation, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -46,7 +46,7 @@ #include "libguile/__scm.h" #ifdef __ia64__ -#include +#include extern unsigned long __libc_ia64_register_backing_store_base; #endif