Start support of OpenBSD, tcc compiler can be produced from source tree

master
Christian Jullien 2016-10-15 14:50:17 +02:00
parent 18a5d8188a
commit 36759ddacf
2 changed files with 7 additions and 1 deletions

4
tcc.h
View File

@ -39,7 +39,9 @@
#ifndef _WIN32
# include <unistd.h>
# include <sys/time.h>
# include <sys/ucontext.h>
# ifndef __OpenBSD__
# include <sys/ucontext.h>
# endif
# include <sys/mman.h>
# ifndef CONFIG_TCC_STATIC
# include <dlfcn.h>

View File

@ -496,6 +496,8 @@ static int rt_get_caller_pc(addr_t *paddr, ucontext_t *uc, int level)
*paddr = uc->uc_mcontext.eip;
#elif defined(__NetBSD__)
*paddr = uc->uc_mcontext.__gregs[_REG_EIP];
#elif defined(__OpenBSD__)
*paddr = uc->sc_eip;
#else
*paddr = uc->uc_mcontext.gregs[REG_EIP];
#endif
@ -509,6 +511,8 @@ static int rt_get_caller_pc(addr_t *paddr, ucontext_t *uc, int level)
fp = uc->uc_mcontext.ebp;
#elif defined(__NetBSD__)
fp = uc->uc_mcontext.__gregs[_REG_EBP];
#elif defined(__OpenBSD__)
*paddr = uc->sc_ebp;
#else
fp = uc->uc_mcontext.gregs[REG_EBP];
#endif