On 5/13/24 22:26, Kewen.Lin wrote:
> Hi,
> 
> on 2024/4/20 05:18, Carl Love wrote:
>> rs6000, remove __builtin_vsx_xvcmpeqsp_p built-in
>>
>> The built-in __builtin_vsx_xvcmpeqsp_p is a duplicate of the overloaded
>> __builtin_altivec_vcmpeqfp_p built-in.  The built-in is undocumented and
>> there are no test cases for it.  The patch removes built-in
>> __builtin_vsx_xvcmpeqsp_p.
> As the previous review comments in the v1 (this is actually v2):
> https://gcc.gnu.org/pipermail/gcc-patches/2024-February/646728.html
> , both __builtin_vsx_xvcmpeqsp_p and __builtin_vsx_xvcmpeqsp can be
> dropped, so please consider __builtin_vsx_xvcmpeqsp as well.

Yes, as you noted, __builtin_vsx_xvcmpeqsp is removed in the next patch.
> 
>>
>> gcc/ChangeLog:
>>      * config/rs6000/rs6000-builtin.cc (case RS6000_BIF_RSQRT):
>>      Remove case statement.
> 
> It seems you mixed this with some other patch, this line doesn't
> belong to this patch, ...

Took that out of this patch.  Didn't get the changes separated cleanly.

> 
>>         * config/rs6000/rs6000-builtins.def (__builtin_vsx_xvcmpeqsp_p):
>>      Remove built-in definition.
>> ---
>>  gcc/config/rs6000/rs6000-builtin.cc   | 6 ------
>>  gcc/config/rs6000/rs6000-builtins.def | 6 ------
>>  2 files changed, 12 deletions(-)
>>
>> diff --git a/gcc/config/rs6000/rs6000-builtin.cc 
>> b/gcc/config/rs6000/rs6000-builtin.cc
>> index f83d65b06ef..74ed8fc1805 100644
>> --- a/gcc/config/rs6000/rs6000-builtin.cc
>> +++ b/gcc/config/rs6000/rs6000-builtin.cc
>> @@ -269,12 +269,6 @@ rs6000_builtin_md_vectorized_function (tree fndecl, 
>> tree type_out,
>>      = (enum rs6000_gen_builtins) DECL_MD_FUNCTION_CODE (fndecl);
>>    switch (fn)
>>      {
>> -    case RS6000_BIF_RSQRTF:
>> -      if (VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SFmode)
>> -      && out_mode == SFmode && out_n == 4
>> -      && in_mode == SFmode && in_n == 4)
>> -    return rs6000_builtin_decls[RS6000_BIF_VRSQRTFP];
>> -      break;
> 
> ... and this ...

Ditto

> 
>>      case RS6000_BIF_RSQRT:
>>        if (VECTOR_UNIT_VSX_P (V2DFmode)
>>        && out_mode == DFmode && out_n == 2
>> diff --git a/gcc/config/rs6000/rs6000-builtins.def 
>> b/gcc/config/rs6000/rs6000-builtins.def
>> index d65c858ac0c..2f6149edd5f 100644
>> --- a/gcc/config/rs6000/rs6000-builtins.def
>> +++ b/gcc/config/rs6000/rs6000-builtins.def
>> @@ -917,9 +917,6 @@
>>    fpmath vf __builtin_altivec_vrsqrtefp (vf);
>>      VRSQRTEFP rsqrtev4sf2 {}
>>  
>> -  fpmath vf __builtin_altivec_vrsqrtfp (vf);
>> -    VRSQRTFP rsqrtv4sf2 {}
>> -
> 
> ..., also this.

Ditto

> 
> BR,
> Kewen
> 
>>    const vsc __builtin_altivec_vsel_16qi (vsc, vsc, vuc);
>>      VSEL_16QI vector_select_v16qi {}
>>  
>> @@ -1619,9 +1616,6 @@
>>    const vf __builtin_vsx_xvcmpeqsp (vf, vf);
>>      XVCMPEQSP vector_eqv4sf {}
>>  
>> -  const signed int __builtin_vsx_xvcmpeqsp_p (signed int, vf, vf);
>> -    XVCMPEQSP_P vector_eq_v4sf_p {pred}
>> -
>>    const vd __builtin_vsx_xvcmpgedp (vd, vd);
>>      XVCMPGEDP vector_gev2df {}
>>  

Reply via email to