diff options
author | Björn Gustavsson <[email protected]> | 2010-09-07 10:27:14 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2010-09-07 10:27:14 +0200 |
commit | 03997d5a1c166e8470dd9c888a5dba121144986a (patch) | |
tree | 76ef98d2fc2cf0588392b036be18d984072207c1 /erts/configure.in | |
parent | 4763e0b7b8c4859d9e56f1fc9aa1426eebc8f65d (diff) | |
parent | 88a04a19d751c4c6712fc9b079e16d3976a4d731 (diff) | |
download | otp-03997d5a1c166e8470dd9c888a5dba121144986a.tar.gz otp-03997d5a1c166e8470dd9c888a5dba121144986a.tar.bz2 otp-03997d5a1c166e8470dd9c888a5dba121144986a.zip |
Merge branch 'mk/net-dragonfly-bsd-patches' into dev
* mk/net-dragonfly-bsd-patches:
Remove unused variables
Use proper install method
Add support for DragonFly BSD
Add support for NetBSD
Diffstat (limited to 'erts/configure.in')
-rw-r--r-- | erts/configure.in | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/erts/configure.in b/erts/configure.in index 5747944bba..8c6f2ac076 100644 --- a/erts/configure.in +++ b/erts/configure.in @@ -2676,7 +2676,7 @@ static __inline__ int check_fpe(double f) * Implement SIGFPE handler based on CPU/OS combination */ -#if (defined(__linux__) && (defined(__i386__) || defined(__x86_64__) || defined(__sparc__) || defined(__powerpc__))) || (defined(__DARWIN__) && (defined(__i386__) || defined(__x86_64__) || defined(__ppc__))) || (defined(__FreeBSD__) && (defined(__i386__) || defined(__x86_64__))) || (defined(__OpenBSD__) && defined(__x86_64__)) || (defined(__sun__) && defined(__x86_64__)) +#if (defined(__linux__) && (defined(__i386__) || defined(__x86_64__) || defined(__sparc__) || defined(__powerpc__))) || (defined(__DARWIN__) && (defined(__i386__) || defined(__x86_64__) || defined(__ppc__))) || (defined(__FreeBSD__) && (defined(__i386__) || defined(__x86_64__))) || ((defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)) || (defined(__sun__) && defined(__x86_64__)) #if defined(__linux__) && defined(__i386__) #if !defined(X86_FXSR_MAGIC) @@ -2790,6 +2790,11 @@ static void fpe_sig_action(int sig, siginfo_t *si, void *puc) struct fxsave64 *fxsave = uc->sc_fpstate; fxsave->fx_mxcsr = 0x1F80; fxsave->fx_fsw &= ~0xFF; +#elif defined(__NetBSD__) && defined(__x86_64__) + mcontext_t *mc = &uc->uc_mcontext; + struct fxsave64 *fxsave = (struct fxsave64 *)&mc->__fpregs; + fxsave->fx_mxcsr = 0x1F80; + fxsave->fx_fsw &= ~0xFF; #elif defined(__sun__) && defined(__x86_64__) mcontext_t *mc = &uc->uc_mcontext; struct fpchip_state *fpstate = &mc->fpregs.fp_reg_set.fpchip_state; |