aboutsummaryrefslogtreecommitdiff
path: root/dyngen-exec.h
diff options
context:
space:
mode:
authorths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-07-31 23:46:55 +0000
committerths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-07-31 23:46:55 +0000
commit9bbc5cc8295670fd3f80fbdbc7fdddcecb403880 (patch)
tree87516e3cf11c2d583e44abc540764d1ac043dc5f /dyngen-exec.h
parent8f860bb83cb872461ebac017232604b1dc2d2604 (diff)
downloadqemu-9bbc5cc8295670fd3f80fbdbc7fdddcecb403880.zip
qemu-9bbc5cc8295670fd3f80fbdbc7fdddcecb403880.tar.gz
qemu-9bbc5cc8295670fd3f80fbdbc7fdddcecb403880.tar.bz2
Fiddly dyngen bits for s390 host support, by Ulrich Hecht.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3105 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'dyngen-exec.h')
-rw-r--r--dyngen-exec.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/dyngen-exec.h b/dyngen-exec.h
index 9f5fcc6..75d27ce 100644
--- a/dyngen-exec.h
+++ b/dyngen-exec.h
@@ -254,7 +254,7 @@ extern int __op_jmp0, __op_jmp1, __op_jmp2, __op_jmp3;
#define GOTO_LABEL_PARAM(n) asm volatile ("b " ASM_NAME(__op_gen_label) #n)
#elif defined(__s390__)
#define EXIT_TB() asm volatile ("br %r14")
-#define GOTO_LABEL_PARAM(n) asm volatile ("b " ASM_NAME(__op_gen_label) #n)
+#define GOTO_LABEL_PARAM(n) asm volatile ("bras %r7,8; .long " ASM_NAME(__op_gen_label) #n "; l %r7, 0(%r7); br %r7")
#elif defined(__alpha__)
#define EXIT_TB() asm volatile ("ret")
#elif defined(__ia64__)