Commit 9df8aa4abb62ae36404acc46286c3706e05d086f
1 parent
ae063a68
win32 fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1208 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
8 additions
and
2 deletions
dyngen-exec.h
| @@ -209,16 +209,22 @@ extern int __op_param1, __op_param2, __op_param3; | @@ -209,16 +209,22 @@ extern int __op_param1, __op_param2, __op_param3; | ||
| 209 | 209 | ||
| 210 | extern int __op_jmp0, __op_jmp1, __op_jmp2, __op_jmp3; | 210 | extern int __op_jmp0, __op_jmp1, __op_jmp2, __op_jmp3; |
| 211 | 211 | ||
| 212 | +#if defined(_WIN32) | ||
| 213 | +#define ASM_NAME(x) "_" #x | ||
| 214 | +#else | ||
| 215 | +#define ASM_NAME(x) #x | ||
| 216 | +#endif | ||
| 217 | + | ||
| 212 | #ifdef __i386__ | 218 | #ifdef __i386__ |
| 213 | #define EXIT_TB() asm volatile ("ret") | 219 | #define EXIT_TB() asm volatile ("ret") |
| 214 | -#define GOTO_LABEL_PARAM(n) asm volatile ("jmp __op_gen_label" #n) | 220 | +#define GOTO_LABEL_PARAM(n) asm volatile ("jmp " ASM_NAME(__op_gen_label) #n) |
| 215 | #endif | 221 | #endif |
| 216 | #ifdef __x86_64__ | 222 | #ifdef __x86_64__ |
| 217 | #define EXIT_TB() asm volatile ("ret") | 223 | #define EXIT_TB() asm volatile ("ret") |
| 218 | #endif | 224 | #endif |
| 219 | #ifdef __powerpc__ | 225 | #ifdef __powerpc__ |
| 220 | #define EXIT_TB() asm volatile ("blr") | 226 | #define EXIT_TB() asm volatile ("blr") |
| 221 | -#define GOTO_LABEL_PARAM(n) asm volatile ("b __op_gen_label" #n) | 227 | +#define GOTO_LABEL_PARAM(n) asm volatile ("b " ASM_NAME(__op_gen_label) #n) |
| 222 | #endif | 228 | #endif |
| 223 | #ifdef __s390__ | 229 | #ifdef __s390__ |
| 224 | #define EXIT_TB() asm volatile ("br %r14") | 230 | #define EXIT_TB() asm volatile ("br %r14") |