qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PULL 07/11] target/hppa: ignore DIAG opcode


From: Richard Henderson
Subject: [Qemu-devel] [PULL 07/11] target/hppa: ignore DIAG opcode
Date: Tue, 12 Mar 2019 09:19:00 -0700

From: Sven Schnelle <address@hidden>

DIAG is usually only used by diagnostics software as it's CPU
specific. In most of the cases it's better to ignore it and log
a message that it's not implemented.

Signed-off-by: Sven Schnelle <address@hidden>
Message-Id: <address@hidden>
[rth: Free the nullify condition.]
Signed-off-by: Richard Henderson <address@hidden>
---
 target/hppa/translate.c  | 7 +++++++
 target/hppa/insns.decode | 3 +++
 2 files changed, 10 insertions(+)

diff --git a/target/hppa/translate.c b/target/hppa/translate.c
index c4815d7e1a..f3e78b8e22 100644
--- a/target/hppa/translate.c
+++ b/target/hppa/translate.c
@@ -4048,6 +4048,13 @@ static bool trans_fmpyfadd_d(DisasContext *ctx, 
arg_fmpyfadd_d *a)
     return nullify_end(ctx);
 }
 
+static bool trans_diag(DisasContext *ctx, arg_diag *a)
+{
+    qemu_log_mask(LOG_UNIMP, "DIAG opcode ignored\n");
+    cond_free(&ctx->null_cond);
+    return true;
+}
+
 static void hppa_tr_init_disas_context(DisasContextBase *dcbase, CPUState *cs)
 {
     DisasContext *ctx = container_of(dcbase, DisasContext, base);
diff --git a/target/hppa/insns.decode b/target/hppa/insns.decode
index 55ff39dd05..098370c2f0 100644
--- a/target/hppa/insns.decode
+++ b/target/hppa/insns.decode
@@ -525,3 +525,6 @@ fmpy_d          001110 ..... ..... 010 ..... ... .....  
@f0e_d_3
 fdiv_d          001110 ..... ..... 011 ..... ... .....  @f0e_d_3
 
 xmpyu           001110 ..... ..... 010 .0111 .00 t:5    r1=%ra64 r2=%rb64
+
+# diag
+diag            000101 ----- ----- ---- ---- ---- ----
-- 
2.17.2




reply via email to

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