Hi Carl, on 2024/8/8 01:15, Carl Love wrote: > > GCC maintainers: > > The following patch removes two redundant built-ins __builtin_vsx_vperm_8hi > and __builtin_vsx_vperm_8hi_uns. The built-ins are covered by the overloaded > vec_perm built-in. > > The patch has been tested on Power 10 LE and BE with no regressions. > > Please let me know if it is acceptable for mainline. Thanks. > > Carl > > ------------------------------------------------------------- > rs6000, remove built-ins __builtin_vsx_vperm_8hi and > __builtin_vsx_vperm_8hi_uns > > The two built-ins __builtin_vsx_vperm_8hi and __builtin_vsx_vperm_8hi_uns > are redundant. The are covered by the overloaded vec_perm built-in. The > built-ins are not documented and do not have test cases.
OK for trunk, maybe also mention this is a follow up of r15-1923, thanks! BR, Kewen > > This patch removes the redundant built-ins. > > gcc/ChangeLog: > * config/rs6000/rs6000-builtins.def (__builtin_vsx_vperm_8hi, > __builtin_vsx_vperm_8hi_uns): Remove built-in definitions. > --- > gcc/config/rs6000/rs6000-builtins.def | 6 ------ > 1 file changed, 6 deletions(-) > > diff --git a/gcc/config/rs6000/rs6000-builtins.def > b/gcc/config/rs6000/rs6000-builtins.def > index 0c3c884c110..8bb7686bcc8 100644 > --- a/gcc/config/rs6000/rs6000-builtins.def > +++ b/gcc/config/rs6000/rs6000-builtins.def > @@ -1469,12 +1469,6 @@ > const vf __builtin_vsx_uns_floato_v2di (vsll); > UNS_FLOATO_V2DI unsfloatov2di {} > > - const vss __builtin_vsx_vperm_8hi (vss, vss, vuc); > - VPERM_8HI_X altivec_vperm_v8hi {} > - > - const vus __builtin_vsx_vperm_8hi_uns (vus, vus, vuc); > - VPERM_8HI_UNS_X altivec_vperm_v8hi_uns {} > - > const vsll __builtin_vsx_vsigned_v2df (vd); > VEC_VSIGNED_V2DF vsx_xvcvdpsxds {} >