win64: adjust for two args with setjmp(buf,ctx)

master
grischka 2009-12-17 18:44:58 +01:00
parent 614790dc14
commit d79b867d55
2 changed files with 10 additions and 0 deletions

View File

@ -57,6 +57,8 @@ typedef unsigned __int64 uintptr_t;
#define __stdcall #define __stdcall
#define _AMD64_ 1 #define _AMD64_ 1
#define __x86_64 1 #define __x86_64 1
#define USE_MINGW_SETJMP_TWO_ARGS
#define mingw_getsp tinyc_getsp
#else #else
typedef __int32 intptr_t; typedef __int32 intptr_t;
typedef unsigned __int32 uintptr_t; typedef unsigned __int32 uintptr_t;

View File

@ -56,6 +56,14 @@ P0:
mov (%rax),%rcx /* restore ecx */ mov (%rax),%rcx /* restore ecx */
jmp *8(%rax) jmp *8(%rax)
/* ---------------------------------------------- */
/* avoid msvcrt unwind stuff for setjmp/longjmp */
.globl tinyc_getsp
tinyc_getsp:
xor %rax,%rax
ret
/* ---------------------------------------------- */ /* ---------------------------------------------- */
#endif #endif
/* ---------------------------------------------- */ /* ---------------------------------------------- */