Hi Carl, on 2024/5/25 04:18, Carl Love wrote: > Kewen: > > On 5/14/24 01:43, Kewen.Lin wrote: >> Hi, >> >> on 2024/4/20 05:17, Carl Love wrote: >>> rs6000, Remove __builtin_vsx_xvcvspsxws built-in >>> >>> The built-in __builtin_vsx_xvcvspsxws is a duplicate of the vec_signed >>> 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. >>> >>> This patch removes the redundant built-in. >> >> By revisiting the comments on the previous version: >> https://gcc.gnu.org/pipermail/gcc-patches/2024-February/646723.html > > The comments from the previous version: > ----------------------------------------------------------------- > I think we should recommend users to adopt the recommended built-ins in > PVIPR, by checking the corresponding mnemonic in PVIPR, I got: > > __builtin_vsx_xvcvspsxws -> vec_signed > __builtin_vsx_xvcvspsxds -> N/A > __builtin_vsx_xvcvspuxds -> N/A > __builtin_vsx_xvcvdpsxws -> vec_signed{e,o} > __builtin_vsx_xvcvdpuxws -> vec_unsigned{e,o} > __builtin_vsx_xvcvdpuxds_uns -> vec_unsigned > __builtin_vsx_xvcvspdp -> vec_double{e,o} > __builtin_vsx_xvcvdpsp -> vec_float{e,o} > __builtin_vsx_xvcvspuxws -> vec_unsigned > __builtin_vsx_xvcvsxwdp -> vec_double{e,o} > __builtin_vsx_xvcvuxddp_uns> vec_double > > For __builtin_vsx_xvcvspsxds and __builtin_vsx_xvcvspuxds which don't have > the according PVIPR built-ins, we can extend the current > vec_{un,}signed{e,o} > to cover them and document them following the section mentioning PVIPR. > > are handled by multiple patches in the new series. The main comment on the > previous patch series was to remove most of the built-ins as they were > redundant. So, basically most of the patches in the previous series were > thrown out and a new series to remove the built-ins in the current series. > ---------------------------------------------------------------------------- > > That all said, I distinctly remember addressing each of the above built-ins. > The work on the series got > interrupted a couple of times and it looks like some of the patches to > address the above got lost. My bad. > The following is a list of which patch takes care of removing the duplicate > built-ins.
No problem, thanks for working on this!! > > __builtin_vsx_xvcvspsxws patch 2 removes this built-in > __builtin_vsx_xvcvspsxds -> N/A patch 4 extends vec_{un,}signede > to cover this built-in, > Built-in used in > rs6000-overload.def. Built-in now for > internal use only. > __builtin_vsx_xvcvspuxds -> N/A patch 4 extends vec_{un,}signedo > to cover this built-in. > Built-in used in > rs6000-overload.def. Built-in now for > internal use only > > > __builtin_vsx_xvcvdpsxws -> vec_signed{e,o} removed in patch 4 > __builtin_vsx_xvcvdpuxws -> vec_unsigned{e,o} removed in patch 4 > > __builtin_vsx_xvcvdpuxds_uns -> vec_unsigned remove in patch 4 > __builtin_vsx_xvcvspuxws -> vec_unsigned remove in patch 4 Just to avoid some misunderstanding, I guess you meant the new patch 4? As the current patch 4 doesn't remove these. > > The following will changes will be put into a new patch when the series is > reposted. It appears they > got lost in the current series. My bad. > > __builtin_vsx_xvcvspdp -> vec_double{e,o} remove in new patch number 5 > __builtin_vsx_xvcvdpsp -> vec_float{e,o} remove in new patch number 5 > > __builtin_vsx_xvcvsxwdp -> vec_double{e,o} remove in new patch number 5 > __builtin_vsx_xvcvuxddp_uns> vec_double remove in new patch number 5 > >> >> I wonder if it's intentional to keep the others, at least bifs >> __builtin_vsx_xvcvdpuxds_uns, __builtin_vsx_xvcvspuxws and >> __builtin_vsx_xvcvuxddp_uns looks removable, users can just uses the >> equivalent ones in PVIPR. And for the others, users can still use >> the PVIPR ones by considering endianness (controlling with endianness >> macros). >> > > Hopefully that makes it clearer where the various changes are. > > The next series will add a new patch 5 in the series. The remaining patches > in this series, patches 5, 6, ... will get moved to patch 6, 7, ... in the > next posting of the built-in cleanup patch series. > OK, thanks! BR, Kewen