From: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
target/ppc/insn64.decode | 5 +++++
target/ppc/translate/fixedpoint-impl.c.inc | 12 ++++++++++++
2 files changed, 17 insertions(+)
diff --git a/target/ppc/insn64.decode b/target/ppc/insn64.decode
index 68ed2cbff8..9bef32a845 100644
--- a/target/ppc/insn64.decode
+++ b/target/ppc/insn64.decode
@@ -30,3 +30,8 @@
PADDI 000001 10 0--.-- .................. \
001110 ..... ..... ................ @PLS_D
+
+### Prefixed No-operation Instruction
+
+PNOP 000001 11 0000-- 000000000000000000 \
+ --------------------------------
diff --git a/target/ppc/translate/fixedpoint-impl.c.inc b/target/ppc/translate/fixedpoint-impl.c.inc
index 76e1832297..7d80e3c002 100644
--- a/target/ppc/translate/fixedpoint-impl.c.inc
+++ b/target/ppc/translate/fixedpoint-impl.c.inc
@@ -58,3 +58,15 @@ static bool trans_PADDI(DisasContext *ctx, arg_PLS_D *a)
}
return true;
}
+
+static bool trans_PNOP(DisasContext *ctx, arg_PNOP *a)
+{
+ /*
+ * TODO: diagnose the set of patterns that are illegal:
+ * branches, rfebb, sync other than isync, or a
+ * service processor attention.
+ * The Engineering Note allows us to either diagnose
+ * these as illegal, or treat them all as no-op.
+ */
+ return true;
+}
--
2.25.1