src/os_cpu/windows_x86/vm/unwind_windows_x86.hpp
Print this page
*** 27,40 ****
--- 27,45 ----
#ifdef AMD64
typedef unsigned char UBYTE;
+ #if _MSC_VER < 1700
+
+ /* Not needed for VS2012 compiler, comes from winnt.h. */
#define UNW_FLAG_EHANDLER 0x01
#define UNW_FLAG_UHANDLER 0x02
#define UNW_FLAG_CHAININFO 0x04
+ #endif
+
// This structure is used to define an UNWIND_INFO that
// only has an ExceptionHandler. There are no UnwindCodes
// declared.
typedef struct _UNWIND_INFO_EH_ONLY {
UBYTE Version : 3;
*** 57,66 ****
--- 62,74 ----
ULONG EndAddress;
ULONG UnwindData;
} RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
*/
+ #if _MSC_VER < 1700
+
+ /* Not needed for VS2012 compiler, comes from winnt.h. */
typedef struct _DISPATCHER_CONTEXT {
ULONG64 ControlPc;
ULONG64 ImageBase;
PRUNTIME_FUNCTION FunctionEntry;
ULONG64 EstablisherFrame;
*** 69,78 ****
--- 77,88 ----
// PEXCEPTION_ROUTINE LanguageHandler;
char * LanguageHandler; // double dependency problem
PVOID HandlerData;
} DISPATCHER_CONTEXT, *PDISPATCHER_CONTEXT;
+ #endif
+
#if _MSC_VER < 1500
/* Not needed for VS2008 compiler, comes from winnt.h. */
typedef EXCEPTION_DISPOSITION (*PEXCEPTION_ROUTINE) (
IN PEXCEPTION_RECORD ExceptionRecord,