Implement vararg support for s390. Minor fix to atomic operation for s390.
[mono.git] / mono / jit / win32-exception.h
blob44b0f8bb9517fc7f96f20e8f532f66d3d4c4efdf
1 #ifndef _MONO_WIN32_EXCEPTION_H_
2 #define _MONO_WIN32_EXCEPTION_H_
4 #include <config.h>
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
11 #ifdef PLATFORM_WIN32
13 #include <windows.h>
15 /* use SIG* defines if possible */
16 #ifdef HAVE_SIGNAL_H
17 #include <signal.h>
18 #endif
20 /* sigcontext surrogate */
21 struct sigcontext {
22 unsigned int eax;
23 unsigned int ebx;
24 unsigned int ecx;
25 unsigned int edx;
26 unsigned int ebp;
27 unsigned int esp;
28 unsigned int esi;
29 unsigned int edi;
30 unsigned int eip;
34 typedef void (* MonoW32ExceptionHandler) (int);
35 void win32_seh_init(void);
36 void win32_seh_cleanup(void);
37 void win32_seh_set_handler(int type, MonoW32ExceptionHandler handler);
39 #ifndef SIGFPE
40 #define SIGFPE 4
41 #endif
43 #ifndef SIGILL
44 #define SIGILL 8
45 #endif
47 #ifndef SIGSEGV
48 #define SIGSEGV 11
49 #endif
51 #endif /* PLATFORM_WIN32 */
54 #ifdef __cplusplus
56 #endif
58 #endif /* _MONO_WIN32_EXCEPTION_H_ */