On Mon, May 17, 2021 at 05:50:20PM -0300, matheus.ferst@eldorado.org.br wrote: > From: Richard Henderson > > Signed-off-by: Richard Henderson > Signed-off-by: Matheus Ferst Applied to ppc-for-6.1, thanks. > --- > target/ppc/insn64.decode | 12 ++++++++++++ > target/ppc/translate/fixedpoint-impl.c.inc | 4 ++++ > 2 files changed, 16 insertions(+) > > diff --git a/target/ppc/insn64.decode b/target/ppc/insn64.decode > index 547bd1736f..72c5944a53 100644 > --- a/target/ppc/insn64.decode > +++ b/target/ppc/insn64.decode > @@ -39,6 +39,18 @@ PLWA 000001 00 0--.-- .................. \ > PLD 000001 00 0--.-- .................. \ > 111001 ..... ..... ................ @PLS_D > > +### Fixed-Point Store Instructions > + > +PSTW 000001 10 0--.-- .................. \ > + 100100 ..... ..... ................ @PLS_D > +PSTB 000001 10 0--.-- .................. \ > + 100110 ..... ..... ................ @PLS_D > +PSTH 000001 10 0--.-- .................. \ > + 101100 ..... ..... ................ @PLS_D > + > +PSTD 000001 00 0--.-- .................. \ > + 111101 ..... ..... ................ @PLS_D > + > ### Fixed-Point Arithmetic Instructions > > PADDI 000001 10 0--.-- .................. \ > diff --git a/target/ppc/translate/fixedpoint-impl.c.inc b/target/ppc/translate/fixedpoint-impl.c.inc > index adeee33289..2d2d874146 100644 > --- a/target/ppc/translate/fixedpoint-impl.c.inc > +++ b/target/ppc/translate/fixedpoint-impl.c.inc > @@ -142,24 +142,28 @@ TRANS(STB, do_ldst_D, false, true, MO_UB) > TRANS(STBX, do_ldst_X, false, true, MO_UB) > TRANS(STBU, do_ldst_D, true, true, MO_UB) > TRANS(STBUX, do_ldst_X, true, true, MO_UB) > +TRANS(PSTB, do_ldst_PLS_D, false, true, MO_UB) > > /* Store Halfword */ > TRANS(STH, do_ldst_D, false, true, MO_UW) > TRANS(STHX, do_ldst_X, false, true, MO_UW) > TRANS(STHU, do_ldst_D, true, true, MO_UW) > TRANS(STHUX, do_ldst_X, true, true, MO_UW) > +TRANS(PSTH, do_ldst_PLS_D, false, true, MO_UW) > > /* Store Word */ > TRANS(STW, do_ldst_D, false, true, MO_UL) > TRANS(STWX, do_ldst_X, false, true, MO_UL) > TRANS(STWU, do_ldst_D, true, true, MO_UL) > TRANS(STWUX, do_ldst_X, true, true, MO_UL) > +TRANS(PSTW, do_ldst_PLS_D, false, true, MO_UL) > > /* Store Doubleword */ > TRANS64(STD, do_ldst_D, false, true, MO_Q) > TRANS64(STDX, do_ldst_X, false, true, MO_Q) > TRANS64(STDU, do_ldst_D, true, true, MO_Q) > TRANS64(STDUX, do_ldst_X, true, true, MO_Q) > +TRANS64(PSTD, do_ldst_PLS_D, false, true, MO_Q) > > /* > * Fixed-Point Arithmetic Instructions -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson