summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Henderson2018-07-23 00:28:02 +0200
committerRichard Henderson2018-07-23 18:21:14 +0200
commit672189cd586ea38a2c1d8ab91eb1f9dcff5ceb05 (patch)
treebe1df7a5bef319e949164f3c86b4f9f71995e815
parentMerge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20180723'... (diff)
downloadqemu-672189cd586ea38a2c1d8ab91eb1f9dcff5ceb05.tar.gz
qemu-672189cd586ea38a2c1d8ab91eb1f9dcff5ceb05.tar.xz
qemu-672189cd586ea38a2c1d8ab91eb1f9dcff5ceb05.zip
tcg/i386: Mark xmm registers call-clobbered
When host vector registers and operations were introduced, I failed to mark the registers call clobbered as required by the ABI. Fixes: 770c2fc7bb7 Cc: qemu-stable@nongnu.org Reported-by: Jason A. Donenfeld <Jason@zx2c4.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r--tcg/i386/tcg-target.inc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tcg/i386/tcg-target.inc.c b/tcg/i386/tcg-target.inc.c
index e87b0d445e..a91e4f1313 100644
--- a/tcg/i386/tcg-target.inc.c
+++ b/tcg/i386/tcg-target.inc.c
@@ -3532,7 +3532,7 @@ static void tcg_target_init(TCGContext *s)
tcg_target_available_regs[TCG_TYPE_V256] = ALL_VECTOR_REGS;
}
- tcg_target_call_clobber_regs = 0;
+ tcg_target_call_clobber_regs = ALL_VECTOR_REGS;
tcg_regset_set_reg(tcg_target_call_clobber_regs, TCG_REG_EAX);
tcg_regset_set_reg(tcg_target_call_clobber_regs, TCG_REG_EDX);
tcg_regset_set_reg(tcg_target_call_clobber_regs, TCG_REG_ECX);