win32 fix

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1208 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
bellard 2005-01-09 00:39:12 +00:00
parent ae063a68dc
commit 9df8aa4abb
1 changed files with 8 additions and 2 deletions

View File

@ -209,16 +209,22 @@ extern int __op_param1, __op_param2, __op_param3;
extern int __op_jmp0, __op_jmp1, __op_jmp2, __op_jmp3;
#if defined(_WIN32)
#define ASM_NAME(x) "_" #x
#else
#define ASM_NAME(x) #x
#endif
#ifdef __i386__
#define EXIT_TB() asm volatile ("ret")
#define GOTO_LABEL_PARAM(n) asm volatile ("jmp __op_gen_label" #n)
#define GOTO_LABEL_PARAM(n) asm volatile ("jmp " ASM_NAME(__op_gen_label) #n)
#endif
#ifdef __x86_64__
#define EXIT_TB() asm volatile ("ret")
#endif
#ifdef __powerpc__
#define EXIT_TB() asm volatile ("blr")
#define GOTO_LABEL_PARAM(n) asm volatile ("b __op_gen_label" #n)
#define GOTO_LABEL_PARAM(n) asm volatile ("b " ASM_NAME(__op_gen_label) #n)
#endif
#ifdef __s390__
#define EXIT_TB() asm volatile ("br %r14")