Hi Carl,

on 2024/7/24 01:32, Carl Love wrote:
> GCC maintainers:
> 
> The code generated by using C-code to set a vector element versus using a 
> built-in has been investigated.  The assembly code generated from the C-code 
> is as good or better than the assembly code generated for the built-ins for 
> both the -O0 and -O3 levels of optimization.
> 
> For the vec_insert built-in bif whose resolving makes use of the vec_set bif 
> previously, is now removed, is as good as before with optimization.
> 
> This two patch series removes the __builtin_vec_set_v1ti, 
> __builtin_vec_set_v2df, __builtin_vec_set_v2di and  built-ins 
> __builtin_vsx_set_1ti,  __builtin_vsx_set_2df, __builtin_vsx_set_2di 
> built-ins in favor of using C-code instead.  The built-ins use the built-in 
> set attribute in the definitions of the built-ins.  With the removal of these 
> 6 built-ins, the set built-in attribute is no longer used and the related 
> code for the attribute is removed.
> 
> The patch, first patch in this series, to remove the __builtin_vec_set_v1ti, 
> __builtin_vec_set_v2df, __builtin_vec_set_v2di was previously posted.  The 
> feedback on the patch was that we could also remove set bif attribute.  
> Removal of the set bif attribute requires also removing the 
> __builtin_vsx_set_1ti,  __builtin_vsx_set_2df, __builtin_vsx_set_2di 
> built-ins.  The second patch removes the vsx set built-ins and the now no 
> longer used set built-in attribute and associated code.
> 
> The patches have been tested on a Power 10 LE system with no regressions.

It would be good to test this on BE as well (both 64-bit and 32-bit).

BR,
Kewen

Reply via email to