From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:57303) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TAojU-0000Jz-M8 for qemu-devel@nongnu.org; Sun, 09 Sep 2012 17:07:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TAojT-0006H7-FI for qemu-devel@nongnu.org; Sun, 09 Sep 2012 17:07:56 -0400 Received: from mail-pz0-f45.google.com ([209.85.210.45]:63059) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TAojT-0005pO-9x for qemu-devel@nongnu.org; Sun, 09 Sep 2012 17:07:55 -0400 Received: by mail-pz0-f45.google.com with SMTP id n15so968311dad.4 for ; Sun, 09 Sep 2012 14:07:55 -0700 (PDT) Sender: Richard Henderson From: Richard Henderson Date: Sun, 9 Sep 2012 14:05:52 -0700 Message-Id: <1347224784-19472-95-git-send-email-rth@twiddle.net> In-Reply-To: <1347224784-19472-1-git-send-email-rth@twiddle.net> References: <1347224784-19472-1-git-send-email-rth@twiddle.net> Subject: [Qemu-devel] [PATCH 094/126] target-s390: Convert PTLB List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Alexander Graf Signed-off-by: Richard Henderson --- target-s390x/insn-data.def | 2 ++ target-s390x/translate.c | 14 +++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/target-s390x/insn-data.def b/target-s390x/insn-data.def index 79ed499..58f2b41 100644 --- a/target-s390x/insn-data.def +++ b/target-s390x/insn-data.def @@ -629,6 +629,8 @@ C(0xda00, MVCP, SS_d, Z, la1, a2, 0, 0, mvcp, 0) /* MOVE TO SECONDARY */ C(0xdb00, MVCS, SS_d, Z, la1, a2, 0, 0, mvcs, 0) +/* PURGE TLB */ + C(0xb20d, PTLB, S, Z, 0, 0, 0, 0, ptlb, 0) /* SET ADDRESSING MODE */ /* We only do 64-bit, so accept this as a no-op. Let SAM24 and SAM31 signal illegal instruction. */ diff --git a/target-s390x/translate.c b/target-s390x/translate.c index 09901bc..f3108f3 100644 --- a/target-s390x/translate.c +++ b/target-s390x/translate.c @@ -1030,11 +1030,6 @@ static void disas_b2(DisasContext *s, int op, uint32_t insn) LOG_DISAS("disas_b2: op 0x%x r1 %d r2 %d\n", op, r1, r2); switch (op) { - case 0x0d: /* PTLB [S] */ - /* Purge TLB */ - check_privileged(s); - gen_helper_ptlb(cpu_env); - break; case 0x10: /* SPX D2(B2) [S] */ /* Set Prefix Register */ check_privileged(s); @@ -2664,6 +2659,15 @@ static ExitStatus op_ori(DisasContext *s, DisasOps *o) return NO_EXIT; } +#ifndef CONFIG_USER_ONLY +static ExitStatus op_ptlb(DisasContext *s, DisasOps *o) +{ + check_privileged(s); + gen_helper_ptlb(cpu_env); + return NO_EXIT; +} +#endif + static ExitStatus op_rev16(DisasContext *s, DisasOps *o) { tcg_gen_bswap16_i64(o->out, o->in2); -- 1.7.11.4