summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Garnock-Jones <tonygarnockjones@gmail.com>2011-05-19 18:09:16 -0400
committerIvan Maidanski <ivmai@mail.ru>2013-11-03 14:25:45 +0400
commit3f4aa76e26a94f02e30e195480ccffa4722c3a52 (patch)
tree4ccb03c4070d047e69646f63bf923222a521a94f
parentf6b7c3c6d638d868c774cd71b1dd1853e14bd101 (diff)
downloadbdwgc-3f4aa76e26a94f02e30e195480ccffa4722c3a52.tar.gz
uClibc doesn't support getcontext().
-rw-r--r--mach_dep.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mach_dep.c b/mach_dep.c
index 1f1270e8..8cfa6cb3 100644
--- a/mach_dep.c
+++ b/mach_dep.c
@@ -176,9 +176,10 @@ void GC_with_callee_saves_pushed(void (*fn)(ptr_t, void *),
# if defined(HAVE_PUSH_REGS)
GC_push_regs();
# elif defined(UNIX_LIKE) && !defined(DARWIN) && !defined(ARM32) && \
- !defined(HURD) && !defined(OPENBSD)
+ !defined(HURD) && !defined(OPENBSD) && !defined(__UCLIBC__)
/* Older versions of Darwin seem to lack getcontext(). */
/* ARM Linux often doesn't support a real getcontext(). */
+ /* uClibc doesn't support getcontext(), at least as of Mar 2011. */
ucontext_t ctxt;
if (getcontext(&ctxt) < 0)
ABORT ("Getcontext failed: Use another register retrieval method?");