Fix amd64 build of pseh

svn path=/trunk/; revision=52120
This commit is contained in:
Timo Kreuzer 2011-06-06 19:03:53 +00:00
parent 618606f8c5
commit 116862c485
3 changed files with 88 additions and 4 deletions

View file

@ -19,10 +19,17 @@ if(NOT MSVC)
else()
list(APPEND SOURCE
dummy.c
i386/seh.s
i386/seh_prolog.s)
if(ARCH MATCHES i386)
list(APPEND SOURCE
dummy.c
i386/seh.s
i386/seh_prolog.s)
elseif(ARCH MATCHES amd64)
list(APPEND SOURCE
dummy.c
amd64/seh.s
amd64/seh_prolog.s)
endif()
add_library(pseh ${SOURCE})
add_dependencies(pseh asm)

View file

@ -0,0 +1,52 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS CRT
* FILE: lib/pseh/amd64/seh.S
* PURPOSE: SEH Support for the CRT
* PROGRAMMERS:
*/
/* INCLUDES ******************************************************************/
#include <asm.inc>
#define DISPOSITION_DISMISS 0
#define DISPOSITION_CONTINUE_SEARCH 1
#define DISPOSITION_COLLIDED_UNWIND 3
#define EXCEPTION_EXIT_UNWIND 4
#define EXCEPTION_UNWINDING 2
EXTERN RtlUnwind:PROC
/* GLOBALS *******************************************************************/
PUBLIC _global_unwind2
PUBLIC _local_unwind2
PUBLIC _abnormal_termination
PUBLIC _except_handler2
PUBLIC _except_handler3
/* FUNCTIONS *****************************************************************/
.code
_unwind_handler:
ret
_global_unwind2:
ret
_abnormal_termination:
ret
_local_unwind2:
ret
_except_handler2:
ret
_except_handler3:
ret
END

View file

@ -0,0 +1,25 @@
/*
* COPYRIGHT: GNU GPL, see COPYING in the top level directory
* PROJECT: ReactOS CRT
* FILE: lib/pseh/amd64/seh_prolog.S
* PURPOSE: SEH Support for MSVC
* PROGRAMMERS: Timo Kreuzer
*/
/* INCLUDES ******************************************************************/
#include <asm.inc>
EXTERN _except_handler3:PROC
.code
PUBLIC _SEH_prolog
_SEH_prolog:
PUBLIC _SEH_epilog
_SEH_epilog:
ret
END