diff options
author | Richard Henderson <rth@twiddle.net> | 2014-05-28 14:01:44 -0700 |
---|---|---|
committer | Michael Roth <mdroth@linux.vnet.ibm.com> | 2014-08-05 13:32:36 -0500 |
commit | 6ea80edc0165a11060b5e13d62e81630abbc5d25 (patch) | |
tree | fad9e33f62c959e4ebe947cdab5a0b7b0a95f25b | |
parent | f99329cd82831c64864e99293d91be3741dc7a60 (diff) | |
download | qemu-6ea80edc0165a11060b5e13d62e81630abbc5d25.zip qemu-6ea80edc0165a11060b5e13d62e81630abbc5d25.tar.gz qemu-6ea80edc0165a11060b5e13d62e81630abbc5d25.tar.bz2 |
tcg-i386: Fix win64 qemu store
The first non-register argument isn't placed at offset 0.
Cc: qemu-stable@nongnu.org
Reviewed-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Richard Henderson <rth@twiddle.net>
(cherry picked from commit 0b919667302aa395bfde0328749dc21a0b123c44)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-rw-r--r-- | tcg/i386/tcg-target.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/tcg/i386/tcg-target.c b/tcg/i386/tcg-target.c index f832282..175fae8 100644 --- a/tcg/i386/tcg-target.c +++ b/tcg/i386/tcg-target.c @@ -1407,7 +1407,8 @@ static void tcg_out_qemu_st_slow_path(TCGContext *s, TCGLabelQemuLdst *l) } else { retaddr = TCG_REG_RAX; tcg_out_movi(s, TCG_TYPE_PTR, retaddr, (uintptr_t)l->raddr); - tcg_out_st(s, TCG_TYPE_PTR, retaddr, TCG_REG_ESP, 0); + tcg_out_st(s, TCG_TYPE_PTR, retaddr, TCG_REG_ESP, + TCG_TARGET_CALL_STACK_OFFSET); } } |