default. They appear to work, but gdb has trouble to identify
them. Let's use SIGPWR and SIGXCPU instead for diagnostics.
# ifndef GC_OPENBSD_UTHREADS
# define SIG_SUSPEND SIGXFSZ
# endif
+# elif defined(GC_NETBSD_THREADS)
+# define SIG_SUSPEND SIGPWR
# elif defined(_SIGRTMIN)
# define SIG_SUSPEND _SIGRTMIN + 6
-# else
+# elif defined(SIGRTMIN)
# define SIG_SUSPEND SIGRTMIN + 6
+# else
+#error "Could not determine SIG_SUSPEND for your operating system"
# endif
#endif /* GC_PTHREADS && !SIG_SUSPEND */
# define GC_EXPLICIT_SIGNALS_UNBLOCK
#endif
+/*
#ifdef GC_NETBSD_THREADS
# define SIGRTMIN 33
# define SIGRTMAX 63
#endif
+*/
#ifdef GC_OPENBSD_THREADS
# include <sys/param.h>
# ifdef _SIGRTMIN
# define SIG_THR_RESTART _SIGRTMIN + 5
# else
-# define SIG_THR_RESTART SIGRTMIN + 5
+# ifdef SIGRTMIN
+# define SIG_THR_RESTART SIGRTMIN + 5
+# else
+# define SIG_THR_RESTART SIGXCPU
+# endif
# endif
# else
# define SIG_THR_RESTART SIGXCPU