diff options
author | Ian Lynagh <igloo@earth.li> | 2012-03-16 15:56:04 +0000 |
---|---|---|
committer | Ian Lynagh <igloo@earth.li> | 2012-03-16 15:56:04 +0000 |
commit | d66b9cb07b0e03282c8010bcf76168e64cb4acde (patch) | |
tree | 540302baaae7f3431e2a3ca3d2a1a4fa21844688 /rts | |
parent | 029cd4345a3662f9951d4b3245dc594f24f00b6a (diff) | |
download | haskell-d66b9cb07b0e03282c8010bcf76168e64cb4acde.tar.gz |
For now, turn off the SEH code on Win64
Diffstat (limited to 'rts')
-rw-r--r-- | rts/RtsMain.c | 4 | ||||
-rw-r--r-- | rts/win32/seh_excn.c | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/rts/RtsMain.c b/rts/RtsMain.c index e89445db25..435df420c5 100644 --- a/rts/RtsMain.c +++ b/rts/RtsMain.c @@ -108,11 +108,11 @@ int hs_main (int argc, char *argv[], // program args progmain_closure = main_closure; rtsconfig = rts_config; -#if defined(mingw32_HOST_OS) +#if defined(mingw32_HOST_OS) && defined(i386_HOST_ARCH) BEGIN_CATCH #endif real_main(); -#if defined(mingw32_HOST_OS) +#if defined(mingw32_HOST_OS) && defined(i386_HOST_ARCH) END_CATCH #endif } diff --git a/rts/win32/seh_excn.c b/rts/win32/seh_excn.c index 5da7579b10..da5f64d812 100644 --- a/rts/win32/seh_excn.c +++ b/rts/win32/seh_excn.c @@ -1,9 +1,11 @@ +#include "ghcconfig.h" #include "seh_excn.h" /* * Exception / signal handlers. */ -#if defined(__MINGW32__) +#if defined(mingw32_HOST_OS) +#if defined(i386_HOST_ARCH) jmp_buf seh_unwind_to; unsigned long seh_excn_code; /* variable used to communicate what kind of exception we've caught;nice. */ @@ -39,4 +41,5 @@ catchDivZero(struct _EXCEPTION_RECORD* rec, return ExceptionContinueSearch; } #endif +#endif |