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 {}
>

Reply via email to