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