GCC maintainers:
version 2, added the reference to the patch where the removal of the
built-ins was missed. Note, patch was approved by Kewen with this change.
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.
The removal of these built-ins was missed in commit gcc r15-1923 on
7/9/2024.
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 0e9dc05dbcf..adb4fe761f3 100644
--- a/gcc/config/rs6000/rs6000-builtins.def
+++ b/gcc/config/rs6000/rs6000-builtins.def
@@ -1472,12 +1472,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 {}
--
2.46.0