[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 041/147] target-s390: Convert MOVE LONG
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH 041/147] target-s390: Convert MOVE LONG |
Date: |
Thu, 27 Sep 2012 16:32:06 -0700 |
Signed-off-by: Richard Henderson <address@hidden>
---
target-s390x/insn-data.def | 3 +++
target-s390x/translate.c | 23 ++++++++++++-----------
2 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/target-s390x/insn-data.def b/target-s390x/insn-data.def
index 7a0c999..995c0f6 100644
--- a/target-s390x/insn-data.def
+++ b/target-s390x/insn-data.def
@@ -246,6 +246,9 @@
C(0xb900, LPGR, RRE, Z, 0, r2, r1, 0, abs, abs64)
C(0xb910, LPGFR, RRE, Z, 0, r2_32s, r1, 0, abs, abs64)
+/* MOVE LONG */
+ C(0x0e00, MVCL, RR_a, Z, 0, 0, 0, 0, mvcl, 0)
+
/* MULTIPLY */
C(0x1c00, MR, RR_a, Z, r1p1_32s, r2_32s, new, r1_D32, mul, 0)
C(0x5c00, M, RX_a, Z, r1p1_32s, m2_32s, new, r1_D32, mul, 0)
diff --git a/target-s390x/translate.c b/target-s390x/translate.c
index d0adf5a..52aac3d 100644
--- a/target-s390x/translate.c
+++ b/target-s390x/translate.c
@@ -2371,17 +2371,6 @@ static void disas_s390_insn(CPUS390XState *env,
DisasContext *s)
LOG_DISAS("opc 0x%x\n", opc);
switch (opc) {
- case 0xe: /* MVCL R1,R2 [RR] */
- insn = ld_code2(env, s->pc);
- decode_rr(s, insn, &r1, &r2);
- tmp32_1 = tcg_const_i32(r1);
- tmp32_2 = tcg_const_i32(r2);
- potential_page_fault(s);
- gen_helper_mvcl(cc_op, cpu_env, tmp32_1, tmp32_2);
- set_cc_static(s);
- tcg_temp_free_i32(tmp32_1);
- tcg_temp_free_i32(tmp32_2);
- break;
case 0x28: /* LDR R1,R2 [RR] */
insn = ld_code2(env, s->pc);
decode_rr(s, insn, &r1, &r2);
@@ -3607,6 +3596,18 @@ static ExitStatus op_mov2(DisasContext *s, DisasOps *o)
return NO_EXIT;
}
+static ExitStatus op_mvcl(DisasContext *s, DisasOps *o)
+{
+ TCGv_i32 r1 = tcg_const_i32(get_field(s->fields, r1));
+ TCGv_i32 r2 = tcg_const_i32(get_field(s->fields, r2));
+ potential_page_fault(s);
+ gen_helper_mvcl(cc_op, cpu_env, r1, r2);
+ tcg_temp_free_i32(r1);
+ tcg_temp_free_i32(r2);
+ set_cc_static(s);
+ return NO_EXIT;
+}
+
static ExitStatus op_mul(DisasContext *s, DisasOps *o)
{
tcg_gen_mul_i64(o->out, o->in1, o->in2);
--
1.7.11.4
- [Qemu-devel] [PATCH 026/147] target-s390: Convert LOAD (LOGICAL) BYTE, CHARACTER, HALFWORD, (continued)
- [Qemu-devel] [PATCH 026/147] target-s390: Convert LOAD (LOGICAL) BYTE, CHARACTER, HALFWORD, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 033/147] target-s390: Convert BRANCH AND SAVE, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 034/147] target-s390: Convert BRANCH ON CONDITION, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 028/147] target-s390: Convert LOAD LOGICAL IMMEDIATE, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 035/147] target-s390: Convert BRANCH ON COUNT, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 036/147] target-s390: Convert DIVIDE, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 037/147] target-s390: Send signals for divide, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 038/147] target-s390: Convert TEST UNDER MASK, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 039/147] target-s390: Convert SET ADDRESSING MODE, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 040/147] target-s390: Convert SUPERVISOR CALL, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 041/147] target-s390: Convert MOVE LONG,
Richard Henderson <=
- [Qemu-devel] [PATCH 042/147] target-s390: Convert FP LOAD, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 043/147] target-s390: Convert INSERT CHARACTER, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 044/147] target-s390: Cleanup cc computation helpers, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 045/147] target-s390: Convert INSERT CHARACTERS UNDER MASK, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 046/147] target-s390: Convert EXECUTE, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 047/147] target-s390: Convert FP STORE, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 048/147] target-s390: Convert CONVERT TO DECIMAL, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 049/147] target-s390: Convert SET SYSTEM MASK, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 050/147] target-s390: Convert LOAD PSW, Richard Henderson, 2012/09/27
- [Qemu-devel] [PATCH 051/147] target-s390: Convert DIAGNOSE, Richard Henderson, 2012/09/27