Commit d538432d authored by Alexandre Julliard's avatar Alexandre Julliard

msvcrt: Import setjmp/setjmpex from ntdll.

parent 1d168222
...@@ -268,7 +268,7 @@ ...@@ -268,7 +268,7 @@
@ cdecl _scalb(double long) @ cdecl _scalb(double long)
@ cdecl _searchenv(str str ptr) @ cdecl _searchenv(str str ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
@ stub _setsystime(ptr long) @ stub _setsystime(ptr long)
@ cdecl _sleep(long) @ cdecl _sleep(long)
......
...@@ -1284,9 +1284,9 @@ ...@@ -1284,9 +1284,9 @@
@ cdecl _set_printf_count_output(long) @ cdecl _set_printf_count_output(long)
@ cdecl _set_purecall_handler(ptr) @ cdecl _set_purecall_handler(ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr) __wine_setjmpex @ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -1780,7 +1780,7 @@ ...@@ -1780,7 +1780,7 @@
@ varargs scanf(str) @ varargs scanf(str)
@ varargs scanf_s(str) @ varargs scanf_s(str)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
...@@ -1641,9 +1641,9 @@ ...@@ -1641,9 +1641,9 @@
@ cdecl _set_printf_count_output(long) @ cdecl _set_printf_count_output(long)
@ cdecl _set_purecall_handler(ptr) @ cdecl _set_purecall_handler(ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr) __wine_setjmpex @ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -2138,7 +2138,7 @@ ...@@ -2138,7 +2138,7 @@
@ varargs scanf(str) @ varargs scanf(str)
@ varargs scanf_s(str) @ varargs scanf_s(str)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
...@@ -1653,9 +1653,9 @@ ...@@ -1653,9 +1653,9 @@
@ cdecl _set_printf_count_output(long) @ cdecl _set_printf_count_output(long)
@ cdecl _set_purecall_handler(ptr) @ cdecl _set_purecall_handler(ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr) __wine_setjmpex @ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -2349,7 +2349,7 @@ ...@@ -2349,7 +2349,7 @@
@ varargs scanf(str) @ varargs scanf(str)
@ varargs scanf_s(str) @ varargs scanf_s(str)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
...@@ -2013,7 +2013,7 @@ ...@@ -2013,7 +2013,7 @@
@ varargs scanf(str) msvcr120.scanf @ varargs scanf(str) msvcr120.scanf
@ varargs scanf_s(str) msvcr120.scanf_s @ varargs scanf_s(str) msvcr120.scanf_s
@ cdecl setbuf(ptr ptr) msvcr120.setbuf @ cdecl setbuf(ptr ptr) msvcr120.setbuf
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) msvcr120.setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) msvcr120.setjmp
@ cdecl setlocale(long str) msvcr120.setlocale @ cdecl setlocale(long str) msvcr120.setlocale
@ cdecl setvbuf(ptr str long long) msvcr120.setvbuf @ cdecl setvbuf(ptr str long long) msvcr120.setvbuf
@ cdecl signal(long long) msvcr120.signal @ cdecl signal(long long) msvcr120.signal
......
...@@ -520,8 +520,8 @@ ...@@ -520,8 +520,8 @@
@ cdecl _set_sbh_threshold(long) @ cdecl _set_sbh_threshold(long)
@ cdecl _set_security_error_handler(ptr) @ cdecl _set_security_error_handler(ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
......
...@@ -516,8 +516,8 @@ ...@@ -516,8 +516,8 @@
@ cdecl _set_sbh_threshold(long) @ cdecl _set_sbh_threshold(long)
@ cdecl _set_security_error_handler(ptr) @ cdecl _set_security_error_handler(ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
......
...@@ -964,9 +964,9 @@ ...@@ -964,9 +964,9 @@
@ cdecl _set_purecall_handler(ptr) @ cdecl _set_purecall_handler(ptr)
@ cdecl _set_sbh_threshold(long) @ cdecl _set_sbh_threshold(long)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr) __wine_setjmpex @ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -1461,7 +1461,7 @@ ...@@ -1461,7 +1461,7 @@
@ varargs scanf(str) @ varargs scanf(str)
@ varargs scanf_s(str) @ varargs scanf_s(str)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
...@@ -940,8 +940,8 @@ ...@@ -940,8 +940,8 @@
@ cdecl _set_purecall_handler(ptr) @ cdecl _set_purecall_handler(ptr)
@ cdecl _set_sbh_threshold(long) @ cdecl _set_sbh_threshold(long)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -1433,7 +1433,7 @@ ...@@ -1433,7 +1433,7 @@
@ varargs scanf(str) @ varargs scanf(str)
@ varargs scanf_s(str) @ varargs scanf_s(str)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
...@@ -106,12 +106,6 @@ unsigned int CDECL __CxxQueryExceptionSize(void) ...@@ -106,12 +106,6 @@ unsigned int CDECL __CxxQueryExceptionSize(void)
/******************************************************************* /*******************************************************************
* _setjmp (MSVCRT.@)
*/
__ASM_GLOBAL_FUNC(MSVCRT__setjmp,
"b " __ASM_NAME("__wine_setjmpex"));
/*******************************************************************
* longjmp (MSVCRT.@) * longjmp (MSVCRT.@)
*/ */
void __cdecl MSVCRT_longjmp(_JUMP_BUFFER *jmp, int retval) void __cdecl MSVCRT_longjmp(_JUMP_BUFFER *jmp, int retval)
......
...@@ -109,8 +109,7 @@ unsigned int CDECL __CxxQueryExceptionSize(void) ...@@ -109,8 +109,7 @@ unsigned int CDECL __CxxQueryExceptionSize(void)
/******************************************************************* /*******************************************************************
* _setjmp (MSVCRT.@) * _setjmp (MSVCRT.@)
*/ */
__ASM_GLOBAL_FUNC(MSVCRT__setjmp, __ASM_GLOBAL_FUNC( _setjmp, "b _setjmpex" );
"b " __ASM_NAME("__wine_setjmpex"));
/******************************************************************* /*******************************************************************
* longjmp (MSVCRT.@) * longjmp (MSVCRT.@)
......
...@@ -106,15 +106,6 @@ unsigned int CDECL __CxxQueryExceptionSize(void) ...@@ -106,15 +106,6 @@ unsigned int CDECL __CxxQueryExceptionSize(void)
/******************************************************************* /*******************************************************************
* _setjmp (MSVCRT.@)
*/
int __attribute__((naked)) MSVCRT__setjmp( jmp_buf buf )
{
asm( "b " __ASM_NAME("__wine_setjmpex") );
}
/*******************************************************************
* longjmp (MSVCRT.@) * longjmp (MSVCRT.@)
*/ */
void __cdecl MSVCRT_longjmp( _JUMP_BUFFER *jmp, int retval ) void __cdecl MSVCRT_longjmp( _JUMP_BUFFER *jmp, int retval )
......
...@@ -1024,8 +1024,9 @@ typedef void (__stdcall *MSVCRT_unwind_function)(const _JUMP_BUFFER *); ...@@ -1024,8 +1024,9 @@ typedef void (__stdcall *MSVCRT_unwind_function)(const _JUMP_BUFFER *);
/******************************************************************* /*******************************************************************
* _setjmp (MSVCRT.@) * _setjmp (MSVCRT.@)
*/ */
DEFINE_SETJMP_ENTRYPOINT(MSVCRT__setjmp) #undef _setjmp
int CDECL __regs_MSVCRT__setjmp(_JUMP_BUFFER *jmp) DEFINE_SETJMP_ENTRYPOINT( _setjmp )
int CDECL __regs__setjmp(_JUMP_BUFFER *jmp)
{ {
jmp->Registration = (unsigned long)NtCurrentTeb()->Tib.ExceptionList; jmp->Registration = (unsigned long)NtCurrentTeb()->Tib.ExceptionList;
if (jmp->Registration == ~0UL) if (jmp->Registration == ~0UL)
...@@ -1041,8 +1042,8 @@ int CDECL __regs_MSVCRT__setjmp(_JUMP_BUFFER *jmp) ...@@ -1041,8 +1042,8 @@ int CDECL __regs_MSVCRT__setjmp(_JUMP_BUFFER *jmp)
/******************************************************************* /*******************************************************************
* _setjmp3 (MSVCRT.@) * _setjmp3 (MSVCRT.@)
*/ */
DEFINE_SETJMP_ENTRYPOINT( MSVCRT__setjmp3 ) DEFINE_SETJMP_ENTRYPOINT( _setjmp3 )
int WINAPIV __regs_MSVCRT__setjmp3(_JUMP_BUFFER *jmp, int nb_args, ...) int WINAPIV __regs__setjmp3(_JUMP_BUFFER *jmp, int nb_args, ...)
{ {
jmp->Cookie = MSVCRT_JMP_MAGIC; jmp->Cookie = MSVCRT_JMP_MAGIC;
jmp->UnwindFunc = 0; jmp->UnwindFunc = 0;
......
...@@ -698,12 +698,6 @@ unsigned int CDECL __CxxQueryExceptionSize(void) ...@@ -698,12 +698,6 @@ unsigned int CDECL __CxxQueryExceptionSize(void)
/******************************************************************* /*******************************************************************
* _setjmp (MSVCRT.@)
*/
__ASM_GLOBAL_FUNC( MSVCRT__setjmp,
"jmp " __ASM_NAME("__wine_setjmpex") );
/*******************************************************************
* longjmp (MSVCRT.@) * longjmp (MSVCRT.@)
*/ */
void __cdecl MSVCRT_longjmp( _JUMP_BUFFER *jmp, int retval ) void __cdecl MSVCRT_longjmp( _JUMP_BUFFER *jmp, int retval )
......
...@@ -904,9 +904,9 @@ ...@@ -904,9 +904,9 @@
@ cdecl _set_output_format(long) @ cdecl _set_output_format(long)
@ cdecl _set_sbh_threshold(long) @ cdecl _set_sbh_threshold(long)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr) __wine_setjmpex @ cdecl -arch=!i386 -norelay _setjmpex(ptr ptr)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -1412,7 +1412,7 @@ ...@@ -1412,7 +1412,7 @@
@ varargs scanf(str) @ varargs scanf(str)
@ varargs scanf_s(str) @ varargs scanf_s(str)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
...@@ -493,8 +493,8 @@ ...@@ -493,8 +493,8 @@
@ cdecl _set_error_mode(long) @ cdecl _set_error_mode(long)
@ cdecl _set_sbh_threshold(long) @ cdecl _set_sbh_threshold(long)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -norelay _setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay _setjmp(ptr)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
......
...@@ -94,8 +94,8 @@ ...@@ -94,8 +94,8 @@
@ cdecl __fpecode() @ cdecl __fpecode()
@ cdecl __initialize_lconv_for_unsigned_char() __lconv_init @ cdecl __initialize_lconv_for_unsigned_char() __lconv_init
@ cdecl __intrinsic_abnormal_termination() @ cdecl __intrinsic_abnormal_termination()
@ cdecl -norelay __intrinsic_setjmp(ptr) MSVCRT__setjmp @ cdecl -norelay __intrinsic_setjmp(ptr) _setjmp
@ cdecl -arch=!i386 -norelay __intrinsic_setjmpex(ptr ptr) __wine_setjmpex @ cdecl -arch=!i386 -norelay __intrinsic_setjmpex(ptr ptr) _setjmpex
@ cdecl __isascii(long) @ cdecl __isascii(long)
@ cdecl __iscsym(long) @ cdecl __iscsym(long)
@ cdecl __iscsymf(long) @ cdecl __iscsymf(long)
...@@ -1898,7 +1898,7 @@ ...@@ -1898,7 +1898,7 @@
@ cdecl _set_se_translator(ptr) @ cdecl _set_se_translator(ptr)
@ cdecl _set_thread_local_invalid_parameter_handler(ptr) @ cdecl _set_thread_local_invalid_parameter_handler(ptr)
@ cdecl _seterrormode(long) @ cdecl _seterrormode(long)
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3 @ cdecl -arch=i386 -norelay _setjmp3(ptr long)
@ cdecl _setmaxstdio(long) @ cdecl _setmaxstdio(long)
@ cdecl _setmbcp(long) @ cdecl _setmbcp(long)
@ cdecl _setmode(long long) @ cdecl _setmode(long long)
...@@ -2487,7 +2487,7 @@ ...@@ -2487,7 +2487,7 @@
@ cdecl set_terminate(ptr) @ cdecl set_terminate(ptr)
@ cdecl set_unexpected(ptr) @ cdecl set_unexpected(ptr)
@ cdecl setbuf(ptr ptr) @ cdecl setbuf(ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) MSVCRT__setjmp @ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr ptr) _setjmp
@ cdecl setlocale(long str) @ cdecl setlocale(long str)
@ cdecl setvbuf(ptr str long long) @ cdecl setvbuf(ptr str long long)
@ cdecl signal(long long) @ cdecl signal(long long)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment