qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/1] target/loongarch: LL.{W/D} need writes val to dest register after sign extension
@ 2023-02-02  3:16 Song Gao
  2023-02-02  5:51 ` Richard Henderson
  0 siblings, 1 reply; 3+ messages in thread
From: Song Gao @ 2023-02-02  3:16 UTC (permalink / raw)
  To: qemu-devel; +Cc: richard.henderson, maobibo, qiaochong, yangxiaojuan

The Manual 2.2.7.2:
    'The LL.{W/D} instruction retrieves a word/double-word data from
    the specified address of the memory and writes it to the general
    register rd after sign extension.'

Signed-off-by: Song Gao <gaosong@loongson.cn>
---
 target/loongarch/insn_trans/trans_atomic.c.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/loongarch/insn_trans/trans_atomic.c.inc b/target/loongarch/insn_trans/trans_atomic.c.inc
index 6763c1c301..24fea558d6 100644
--- a/target/loongarch/insn_trans/trans_atomic.c.inc
+++ b/target/loongarch/insn_trans/trans_atomic.c.inc
@@ -12,8 +12,8 @@ static bool gen_ll(DisasContext *ctx, arg_rr_i *a, MemOp mop)
     tcg_gen_addi_tl(t0, src1, a->imm);
     tcg_gen_qemu_ld_i64(dest, t0, ctx->mem_idx, mop);
     tcg_gen_st_tl(t0, cpu_env, offsetof(CPULoongArchState, lladdr));
+    gen_set_gpr(a->rd, dest, EXT_SIGN);
     tcg_gen_st_tl(dest, cpu_env, offsetof(CPULoongArchState, llval));
-    gen_set_gpr(a->rd, dest, EXT_NONE);
     tcg_temp_free(t0);
 
     return true;
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-02-03  7:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-02  3:16 [PATCH 1/1] target/loongarch: LL.{W/D} need writes val to dest register after sign extension Song Gao
2023-02-02  5:51 ` Richard Henderson
2023-02-03  7:42   ` gaosong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).