qemu-stable
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] tcg/loongarch64: Set vector registers call clobbered


From: gaosong
Subject: Re: [PATCH] tcg/loongarch64: Set vector registers call clobbered
Date: Fri, 2 Feb 2024 09:20:59 +0800
User-agent: Mozilla/5.0 (X11; Linux loongarch64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

在 2024/2/2 上午7:34, Richard Henderson 写道:
Because there are more call clobbered registers than
call saved registers, we begin with all registers as
call clobbered and then reset those that are saved.

This was missed when we introduced the LSX support.

Cc: qemu-stable@nongnu.org
Fixes: 16288ded944 ("tcg/loongarch64: Lower basic tcg vec ops to LSX")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2136
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
  tcg/loongarch64/tcg-target.c.inc | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
Thank you !

Reviewed-by: Song Gao <gaosong@loongson.cn>

Thanks.
Song Gao
diff --git a/tcg/loongarch64/tcg-target.c.inc b/tcg/loongarch64/tcg-target.c.inc
index bab0a173a3..dcf0205458 100644
--- a/tcg/loongarch64/tcg-target.c.inc
+++ b/tcg/loongarch64/tcg-target.c.inc
@@ -2327,7 +2327,7 @@ static void tcg_target_init(TCGContext *s)
      tcg_target_available_regs[TCG_TYPE_I32] = ALL_GENERAL_REGS;
      tcg_target_available_regs[TCG_TYPE_I64] = ALL_GENERAL_REGS;
- tcg_target_call_clobber_regs = ALL_GENERAL_REGS;
+    tcg_target_call_clobber_regs = ALL_GENERAL_REGS | ALL_VECTOR_REGS;
      tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_S0);
      tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_S1);
      tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_S2);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]