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 0b91966730
)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
parent
f99329cd82
commit
6ea80edc01
|
@ -1407,7 +1407,8 @@ static void tcg_out_qemu_st_slow_path(TCGContext *s, TCGLabelQemuLdst *l)
|
||||||
} else {
|
} else {
|
||||||
retaddr = TCG_REG_RAX;
|
retaddr = TCG_REG_RAX;
|
||||||
tcg_out_movi(s, TCG_TYPE_PTR, retaddr, (uintptr_t)l->raddr);
|
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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue