Import Upstream version 20180207
[hcoop/debian/mlton.git] / runtime / platform / netbsd.c
1 #include "platform.h"
2
3 #include "diskBack.unix.c"
4 #include "displayMem.proc.c"
5 #include "mmap-protect.c"
6 #include "nonwin.c"
7 #include "sysctl.c"
8 #include "use-mmap.c"
9
10 static void catcher (__attribute__ ((unused)) int signo,
11 __attribute__ ((unused)) siginfo_t* info,
12 void* context) {
13 ucontext_t* ucp = (ucontext_t*)context;
14 GC_handleSigProf ((code_pointer) ucp->uc_mcontext.__gregs[_REG_EIP]);
15 }
16
17 void GC_setSigProfHandler (struct sigaction *sa) {
18 sa->sa_flags = SA_ONSTACK | SA_RESTART;
19 sa->sa_sigaction = (void (*)(int, siginfo_t*, void*))catcher;
20 }