[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 16/60] target-i386: Tidy movsl
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v2 16/60] target-i386: Tidy movsl |
Date: |
Fri, 29 Nov 2013 16:00:03 +1300 |
Always perform a sign-extending load. In the extremely unlikely
case that we've used an 0x66 prefix, the extension to 64-bits is
unnecessary but not wrong; the store will still examine only 16 bits.
Signed-off-by: Richard Henderson <address@hidden>
---
target-i386/translate.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/target-i386/translate.c b/target-i386/translate.c
index 47ed0b4..d919c74 100644
--- a/target-i386/translate.c
+++ b/target-i386/translate.c
@@ -7745,11 +7745,7 @@ static target_ulong disas_insn(CPUX86State *env,
DisasContext *s,
gen_op_mov_reg_T0(d_ot, reg);
} else {
gen_lea_modrm(env, s, modrm, ®_addr, &offset_addr);
- if (d_ot == MO_64) {
- gen_op_ld_v(s, MO_32 | MO_SIGN, cpu_T[0], cpu_A0);
- } else {
- gen_op_ld_v(s, MO_32, cpu_T[0], cpu_A0);
- }
+ gen_op_ld_v(s, MO_32 | MO_SIGN, cpu_T[0], cpu_A0);
gen_op_mov_reg_T0(d_ot, reg);
}
} else
--
1.8.3.1
- [Qemu-devel] [PATCH v2 06/60] target-i386: Replace OT_* constants with MO_* constants, (continued)
- [Qemu-devel] [PATCH v2 06/60] target-i386: Replace OT_* constants with MO_* constants, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 07/60] target-i386: Remove gen_op_ld_T0_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 08/60] target-i386: Remove gen_op_ldu_T0_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 09/60] target-i386: Remove gen_op_ld_T1_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 10/60] target-i386: Remove gen_op_lds_T0_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 11/60] target-i386: Introduce gen_op_st_rm_T0_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 12/60] target-i386: Remove gen_op_st_T0_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 13/60] target-i386: Remove gen_op_st_T1_A0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 14/60] target-i386: Fix typo in gen_push_T1, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 15/60] target-i386: Tidy mov[sz][bw], Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 16/60] target-i386: Tidy movsl,
Richard Henderson <=
- [Qemu-devel] [PATCH v2 17/60] target-i386: Remove unused arguments to gen_lea_modrm, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 18/60] target-i386: Use MO_BE for movbe, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 19/60] target-i386: Tidy gen_op_mov_TN_reg+tcg_gen_trunc_tl_i32, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 20/60] target-i386: Tidy load + truncate, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 21/60] target-i386: Tidy extend + store, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 22/60] target-i386: Tidy extend + move, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 23/60] target-i386: Remove gen_op_movl_T0_0, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 24/60] target-i386: Remove gen_op_movl_T0_im*, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 25/60] target-i386: Remove gen_op_movl_T0_im*, Richard Henderson, 2013/11/28
- [Qemu-devel] [PATCH v2 26/60] target-i386: Remove gen_op_mov*_A0_im, Richard Henderson, 2013/11/28