Message ID | 20181207171314.30769-1-leonardo@linux.vnet.ibm.com |
---|---|
State | New |
Headers | show |
Series | [1/1] Changes requirement for "vsubsbs" instruction | expand |
On Fri, Dec 07, 2018 at 03:13:14PM -0200, Leonardo Bras wrote: > From: "Paul A. Clarke" <pc@us.ibm.com> > > Changes requirement for "vsubsbs" instruction, which has been supported > since ISA 2.03. (Please see section 5.9.1.2 of ISA 2.03) > > Reported-by: Paul A. Clarke <pc@us.ibm.com> > Signed-off-by: Paul A. Clarke <pc@us.ibm.com> > Signed-off-by: Leonardo Bras <leonardo@linux.vnet.ibm.com> Those instruction generating macros are super-confusing, but I think this is right. vsubsbs has been there for ages with altivec, bcdtrunc is new in ISA 3.0. Applied to ppc-for-4.0. > --- > target/ppc/translate/vmx-ops.inc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/ppc/translate/vmx-ops.inc.c b/target/ppc/translate/vmx-ops.inc.c > index 139f80cb24..84e05fb827 100644 > --- a/target/ppc/translate/vmx-ops.inc.c > +++ b/target/ppc/translate/vmx-ops.inc.c > @@ -143,7 +143,7 @@ GEN_VXFORM(vaddsws, 0, 14), > GEN_VXFORM_DUAL(vsububs, bcdadd, 0, 24, PPC_ALTIVEC, PPC_NONE), > GEN_VXFORM_DUAL(vsubuhs, bcdsub, 0, 25, PPC_ALTIVEC, PPC_NONE), > GEN_VXFORM(vsubuws, 0, 26), > -GEN_VXFORM_DUAL(vsubsbs, bcdtrunc, 0, 28, PPC_NONE, PPC2_ISA300), > +GEN_VXFORM_DUAL(vsubsbs, bcdtrunc, 0, 28, PPC_ALTIVEC, PPC2_ISA300), > GEN_VXFORM(vsubshs, 0, 29), > GEN_VXFORM_DUAL(vsubsws, xpnd04_2, 0, 30, PPC_ALTIVEC, PPC_NONE), > GEN_VXFORM_207(vadduqm, 0, 4),
diff --git a/target/ppc/translate/vmx-ops.inc.c b/target/ppc/translate/vmx-ops.inc.c index 139f80cb24..84e05fb827 100644 --- a/target/ppc/translate/vmx-ops.inc.c +++ b/target/ppc/translate/vmx-ops.inc.c @@ -143,7 +143,7 @@ GEN_VXFORM(vaddsws, 0, 14), GEN_VXFORM_DUAL(vsububs, bcdadd, 0, 24, PPC_ALTIVEC, PPC_NONE), GEN_VXFORM_DUAL(vsubuhs, bcdsub, 0, 25, PPC_ALTIVEC, PPC_NONE), GEN_VXFORM(vsubuws, 0, 26), -GEN_VXFORM_DUAL(vsubsbs, bcdtrunc, 0, 28, PPC_NONE, PPC2_ISA300), +GEN_VXFORM_DUAL(vsubsbs, bcdtrunc, 0, 28, PPC_ALTIVEC, PPC2_ISA300), GEN_VXFORM(vsubshs, 0, 29), GEN_VXFORM_DUAL(vsubsws, xpnd04_2, 0, 30, PPC_ALTIVEC, PPC_NONE), GEN_VXFORM_207(vadduqm, 0, 4),