Hi Carl, on 2024/6/14 03:40, Carl Love wrote: > GCC maintainers: > > Per the comments on patch 0004 from version 3, the removal of > The built-in __builtin_vsx_xvcvdpuxds_uns and __builtin_vsx_xvcvspuxws was > moved to this patch. The rest of the patch is unchanged from version 3. > There were no comments on this patch for version 3. > > Please let me know if this patch is acceptable. Thanks. > > Carl > > > ----------------------------------------------------- > > rs6000, Remove __builtin_vsx_xvcvspsxws, > __builtin_vsx_xvcvdpuxds_uns, __builtin_vsx_xvcvspuxws built-ins.
Nit: Maybe make it shorter like: Remove built-ins __builtin_vsx_xvcv{sp{sx,u}ws,dpuxds_uns} > > The built-in __builtin_vsx_xvcvspsxws is a duplicate of the vec_signed Nit: Strictly speaking, not a duplicate of vec_signed but covered by it. > built-in that is documented in the PVIPR. The __builtin_vsx_xvcvspsxws > built-in is not documented and there are no test cases for it. > > The built-in __builtin_vsx_xvcvdpuxds_uns is redundant as it is covered by > vec_unsigned, remove. > > The __builtin_vsx_xvcvspuxws is redundant as it is covered by > vec_unsigned, remove. As mentioned in the previous review, I'd expect patch 4/13 only focuses on extending vec_{un,}signed{e,o} for vector float (aka. __builtin_vsx_xvcvspsxds and __builtin_vsx_xvcvspuxds related), and this patch focuses on some built-in removals which have been covered by the existing vec_{un,}signed{,e,o}, so it can also drop the built-ins: "The built-in __builtin_vsx_xvcvdpsxws is redundant as it is covered by vec_signed{e,o}, remove. The built-in __builtin_vsx_xvcvdpuxws is redundant as it is covered by vec_unsigned{e,o}, remove." // copied from 4/13. BR, Kewen > > This patch removes the redundant built-in. > > gcc/ChangeLog: > * config/rs6000/rs6000-builtins.def (__builtin_vsx_xvcvspsxws, > __builtin_vsx_xvcvdpuxds_uns, __builtin_vsx_xvcvspuxws): > Remove built-in definitions. > --- > gcc/config/rs6000/rs6000-builtins.def | 9 --------- > 1 file changed, 9 deletions(-) > > diff --git a/gcc/config/rs6000/rs6000-builtins.def > b/gcc/config/rs6000/rs6000-builtins.def > index 7c36976a089..8cf0b715898 100644 > --- a/gcc/config/rs6000/rs6000-builtins.def > +++ b/gcc/config/rs6000/rs6000-builtins.def > @@ -1697,9 +1697,6 @@ > const vsll __builtin_vsx_xvcvdpuxds_scale (vd, const int); > XVCVDPUXDS_SCALE vsx_xvcvdpuxds_scale {} > > - const vull __builtin_vsx_xvcvdpuxds_uns (vd); > - XVCVDPUXDS_UNS vsx_fixuns_truncv2dfv2di2 {} > - > const vsi __builtin_vsx_xvcvdpuxws (vd); > XVCVDPUXWS vsx_xvcvdpuxws {} > > @@ -1709,15 +1706,9 @@ > const vsll __builtin_vsx_xvcvspsxds (vf); > XVCVSPSXDS vsx_xvcvspsxds {} > > - const vsi __builtin_vsx_xvcvspsxws (vf); > - XVCVSPSXWS vsx_fix_truncv4sfv4si2 {} > - > const vsll __builtin_vsx_xvcvspuxds (vf); > XVCVSPUXDS vsx_xvcvspuxds {} > > - const vsi __builtin_vsx_xvcvspuxws (vf); > - XVCVSPUXWS vsx_fixuns_truncv4sfv4si2 {} > - > const vd __builtin_vsx_xvcvsxddp (vsll); > XVCVSXDDP vsx_floatv2div2df2 {} >