[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH] target/ppc: Remove xscmpnedp instruction
From: |
David Gibson |
Subject: |
Re: [RFC PATCH] target/ppc: Remove xscmpnedp instruction |
Date: |
Fri, 7 Jan 2022 12:06:18 +1100 |
On Thu, Jan 06, 2022 at 02:02:01PM +0100, Greg Kurz wrote:
> On Thu, 6 Jan 2022 13:21:46 +0100
> Cédric Le Goater <clg@kaod.org> wrote:
>
> > On 1/6/22 12:23, Víctor Colombo wrote:
> > > xscmpnedp was added in ISA v3.0 but removed in v3.0B. This patch
> > > removes this instruction as it was not in the final version of v3.0.
> > >
> > > RFC to know if you think this is the correct approach.
> >
> > Usually we deprecate a feature for a minimum of two releases before
> > removing it. It might be overkill for this case since the P9 processor
> > implementation is based on v3.0B.
> >
> > I would simply remove the instruction since it never existed on any
> > supported HW. I will wait for some more feedback.
> >
>
> I don't think it makes sense to keep this instruction if it only
> existed in pre-GA HW.
I agree. If we have a vistigial POWER9 DD1 in the cpu table we should
probably remove that anyway.
> Acked-by: Greg Kurz <groug@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
>
> > Reviewed-by: Cédric Le Goater <clg@kaod.org>
> >
> > Thanks,
> >
> > C.
> >
> >
> > > Signed-off-by: Víctor Colombo <victor.colombo@eldorado.org.br>
> > > ---
> > > target/ppc/fpu_helper.c | 1 -
> > > target/ppc/helper.h | 1 -
> > > target/ppc/translate/vsx-impl.c.inc | 1 -
> > > target/ppc/translate/vsx-ops.c.inc | 1 -
> > > 4 files changed, 4 deletions(-)
> > >
> > > diff --git a/target/ppc/fpu_helper.c b/target/ppc/fpu_helper.c
> > > index e5c29b53b8..f030858cf9 100644
> > > --- a/target/ppc/fpu_helper.c
> > > +++ b/target/ppc/fpu_helper.c
> > > @@ -2270,7 +2270,6 @@ void helper_##op(CPUPPCState *env, ppc_vsr_t *xt,
> > > \
> > > VSX_SCALAR_CMP_DP(xscmpeqdp, eq, 1, 0)
> > > VSX_SCALAR_CMP_DP(xscmpgedp, le, 1, 1)
> > > VSX_SCALAR_CMP_DP(xscmpgtdp, lt, 1, 1)
> > > -VSX_SCALAR_CMP_DP(xscmpnedp, eq, 0, 0)
> > >
> > > void helper_xscmpexpdp(CPUPPCState *env, uint32_t opcode,
> > > ppc_vsr_t *xa, ppc_vsr_t *xb)
> > > diff --git a/target/ppc/helper.h b/target/ppc/helper.h
> > > index f9c72dcd50..8f02cabaf5 100644
> > > --- a/target/ppc/helper.h
> > > +++ b/target/ppc/helper.h
> > > @@ -400,7 +400,6 @@ DEF_HELPER_5(xsnmsubdp, void, env, vsr, vsr, vsr, vsr)
> > > DEF_HELPER_4(xscmpeqdp, void, env, vsr, vsr, vsr)
> > > DEF_HELPER_4(xscmpgtdp, void, env, vsr, vsr, vsr)
> > > DEF_HELPER_4(xscmpgedp, void, env, vsr, vsr, vsr)
> > > -DEF_HELPER_4(xscmpnedp, void, env, vsr, vsr, vsr)
> > > DEF_HELPER_4(xscmpexpdp, void, env, i32, vsr, vsr)
> > > DEF_HELPER_4(xscmpexpqp, void, env, i32, vsr, vsr)
> > > DEF_HELPER_4(xscmpodp, void, env, i32, vsr, vsr)
> > > diff --git a/target/ppc/translate/vsx-impl.c.inc
> > > b/target/ppc/translate/vsx-impl.c.inc
> > > index c08185e857..fbef496257 100644
> > > --- a/target/ppc/translate/vsx-impl.c.inc
> > > +++ b/target/ppc/translate/vsx-impl.c.inc
> > > @@ -1092,7 +1092,6 @@ GEN_VSX_HELPER_X1(xstsqrtdp, 0x14, 0x06, 0,
> > > PPC2_VSX)
> > > GEN_VSX_HELPER_X3(xscmpeqdp, 0x0C, 0x00, 0, PPC2_ISA300)
> > > GEN_VSX_HELPER_X3(xscmpgtdp, 0x0C, 0x01, 0, PPC2_ISA300)
> > > GEN_VSX_HELPER_X3(xscmpgedp, 0x0C, 0x02, 0, PPC2_ISA300)
> > > -GEN_VSX_HELPER_X3(xscmpnedp, 0x0C, 0x03, 0, PPC2_ISA300)
> > > GEN_VSX_HELPER_X2_AB(xscmpexpdp, 0x0C, 0x07, 0, PPC2_ISA300)
> > > GEN_VSX_HELPER_R2_AB(xscmpexpqp, 0x04, 0x05, 0, PPC2_ISA300)
> > > GEN_VSX_HELPER_X2_AB(xscmpodp, 0x0C, 0x05, 0, PPC2_VSX)
> > > diff --git a/target/ppc/translate/vsx-ops.c.inc
> > > b/target/ppc/translate/vsx-ops.c.inc
> > > index c974324c4c..67fa7b2e41 100644
> > > --- a/target/ppc/translate/vsx-ops.c.inc
> > > +++ b/target/ppc/translate/vsx-ops.c.inc
> > > @@ -197,7 +197,6 @@ GEN_XX3FORM_NAME(xsnmsubdp, "xsnmsubmdp", 0x04, 0x17,
> > > PPC2_VSX),
> > > GEN_XX3FORM(xscmpeqdp, 0x0C, 0x00, PPC2_ISA300),
> > > GEN_XX3FORM(xscmpgtdp, 0x0C, 0x01, PPC2_ISA300),
> > > GEN_XX3FORM(xscmpgedp, 0x0C, 0x02, PPC2_ISA300),
> > > -GEN_XX3FORM(xscmpnedp, 0x0C, 0x03, PPC2_ISA300),
> > > GEN_XX3FORM(xscmpexpdp, 0x0C, 0x07, PPC2_ISA300),
> > > GEN_VSX_XFORM_300(xscmpexpqp, 0x04, 0x05, 0x00600001),
> > > GEN_XX2IFORM(xscmpodp, 0x0C, 0x05, PPC2_VSX),
> > >
> >
>
--
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
signature.asc
Description: PGP signature