summaryrefslogtreecommitdiff
path: root/libguile/threads.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2011-12-22 10:30:45 -0500
committerAndy Wingo <wingo@pobox.com>2011-12-22 10:30:45 -0500
commitba20d2629eea673b10c74c1f8168821709ed3807 (patch)
treebf5c97b894d7225d55f4514c0fe0f3d1c0e1acfa /libguile/threads.c
parentc1d5d6d755ff1613ff92efad841487c9e5bb979b (diff)
downloadguile-ba20d2629eea673b10c74c1f8168821709ed3807.tar.gz
freebsd itanium support
* libguile/threads.c (scm_ia64_register_backing_store_base) (scm_ia64_ar_bsp): Provide implementation of these itanium helpers on freebsd. Thanks to Jim Pryor.
Diffstat (limited to 'libguile/threads.c')
-rw-r--r--libguile/threads.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/libguile/threads.c b/libguile/threads.c
index 9a6e4061c..3d98e5e57 100644
--- a/libguile/threads.c
+++ b/libguile/threads.c
@@ -2228,6 +2228,21 @@ scm_ia64_ar_bsp (const void *opaque)
return (void *) ctx->uc_mcontext.sc_ar_bsp;
}
# endif /* linux */
+# ifdef __FreeBSD__
+# include <ucontext.h>
+void *
+scm_ia64_register_backing_store_base (void)
+{
+ return (void *)0x8000000000000000;
+}
+void *
+scm_ia64_ar_bsp (const void *opaque)
+{
+ const ucontext_t *ctx = opaque;
+ return (void *)(ctx->uc_mcontext.mc_special.bspstore
+ + ctx->uc_mcontext.mc_special.ndirty);
+}
+# endif /* __FreeBSD__ */
#endif /* __ia64__ */