qemu-ppc
[Top][All Lists]
Advanced

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

Re: [RFC PATCH] target/ppc: Remove xscmpnedp instruction


From: Greg Kurz
Subject: Re: [RFC PATCH] target/ppc: Remove xscmpnedp instruction
Date: Thu, 6 Jan 2022 14:02:01 +0100

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.

Acked-by: Greg Kurz <groug@kaod.org>

> 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),
> > 
> 




reply via email to

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