[15/35] arm: Explicitly specify other float types for _Generic overloading [PR107515]

Message ID 20221117163809.1009526-16-andrea.corallo@arm.com
State Committed
Commit 2fefb8931d566cc8a4cbba81601972b0d2002f95
Headers
Series arm: rework MVE testsuite and rework backend where necessary (1st chunk) |

Commit Message

Andrea Corallo Nov. 17, 2022, 4:37 p.m. UTC
  From: Stam Markianos-Wright <stam.markianos-wright@arm.com>

This patch adds explicit references to other float types
to __ARM_mve_typeid in arm_mve.h.  Resolves PR 107515:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107515

gcc/ChangeLog:
        PR 107515
        * config/arm/arm_mve.h (__ARM_mve_typeid): Add float types.
---
 gcc/config/arm/arm_mve.h | 3 +++
 1 file changed, 3 insertions(+)
  

Comments

Kyrylo Tkachov Nov. 18, 2022, 4:58 p.m. UTC | #1
> -----Original Message-----
> From: Andrea Corallo <andrea.corallo@arm.com>
> Sent: Thursday, November 17, 2022 4:38 PM
> To: gcc-patches@gcc.gnu.org
> Cc: Kyrylo Tkachov <Kyrylo.Tkachov@arm.com>; Richard Earnshaw
> <Richard.Earnshaw@arm.com>; Stam Markianos-Wright <Stam.Markianos-
> Wright@arm.com>
> Subject: [PATCH 15/35] arm: Explicitly specify other float types for _Generic
> overloading [PR107515]
> 
> From: Stam Markianos-Wright <stam.markianos-wright@arm.com>
> 
> This patch adds explicit references to other float types
> to __ARM_mve_typeid in arm_mve.h.  Resolves PR 107515:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107515
> 
> gcc/ChangeLog:
>         PR 107515
>         * config/arm/arm_mve.h (__ARM_mve_typeid): Add float types.

Argh, I'm looking forward to when we move away from this _Generic business, but for now ok.
The ChangeLog should say "PR target/107515" for the git hook to recognize it IIRC.
Thanks,
Kyrill

> ---
>  gcc/config/arm/arm_mve.h | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/gcc/config/arm/arm_mve.h b/gcc/config/arm/arm_mve.h
> index fd1876b57a0..f6b42dc3fab 100644
> --- a/gcc/config/arm/arm_mve.h
> +++ b/gcc/config/arm/arm_mve.h
> @@ -35582,6 +35582,9 @@ enum {
>  	short: __ARM_mve_type_int_n, \
>  	int: __ARM_mve_type_int_n, \
>  	long: __ARM_mve_type_int_n, \
> +	_Float16: __ARM_mve_type_fp_n, \
> +	__fp16: __ARM_mve_type_fp_n, \
> +	float: __ARM_mve_type_fp_n, \
>  	double: __ARM_mve_type_fp_n, \
>  	long long: __ARM_mve_type_int_n, \
>  	unsigned char: __ARM_mve_type_int_n, \
> --
> 2.25.1
  
Ramana Radhakrishnan Nov. 20, 2022, 10:49 p.m. UTC | #2
On Fri, Nov 18, 2022 at 4:59 PM Kyrylo Tkachov via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
>
>
> > -----Original Message-----
> > From: Andrea Corallo <andrea.corallo@arm.com>
> > Sent: Thursday, November 17, 2022 4:38 PM
> > To: gcc-patches@gcc.gnu.org
> > Cc: Kyrylo Tkachov <Kyrylo.Tkachov@arm.com>; Richard Earnshaw
> > <Richard.Earnshaw@arm.com>; Stam Markianos-Wright <Stam.Markianos-
> > Wright@arm.com>
> > Subject: [PATCH 15/35] arm: Explicitly specify other float types for _Generic
> > overloading [PR107515]
> >
> > From: Stam Markianos-Wright <stam.markianos-wright@arm.com>
> >
> > This patch adds explicit references to other float types
> > to __ARM_mve_typeid in arm_mve.h.  Resolves PR 107515:
> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107515
> >
> > gcc/ChangeLog:
> >         PR 107515
> >         * config/arm/arm_mve.h (__ARM_mve_typeid): Add float types.
>
> Argh, I'm looking forward to when we move away from this _Generic business, but for now ok.
> The ChangeLog should say "PR target/107515" for the git hook to recognize it IIRC.

and the PR is against 11.x - is there a plan to back port this and
dependent patches to relevant branches ?

Ramana

> Thanks,
> Kyrill
>
> > ---
> >  gcc/config/arm/arm_mve.h | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/gcc/config/arm/arm_mve.h b/gcc/config/arm/arm_mve.h
> > index fd1876b57a0..f6b42dc3fab 100644
> > --- a/gcc/config/arm/arm_mve.h
> > +++ b/gcc/config/arm/arm_mve.h
> > @@ -35582,6 +35582,9 @@ enum {
> >       short: __ARM_mve_type_int_n, \
> >       int: __ARM_mve_type_int_n, \
> >       long: __ARM_mve_type_int_n, \
> > +     _Float16: __ARM_mve_type_fp_n, \
> > +     __fp16: __ARM_mve_type_fp_n, \
> > +     float: __ARM_mve_type_fp_n, \
> >       double: __ARM_mve_type_fp_n, \
> >       long long: __ARM_mve_type_int_n, \
> >       unsigned char: __ARM_mve_type_int_n, \
> > --
> > 2.25.1
>
  
Stamatis Markianos-Wright Nov. 21, 2022, 10:45 a.m. UTC | #3
On 11/18/22 16:58, Kyrylo Tkachov wrote:
>
>> -----Original Message-----
>> From: Andrea Corallo <andrea.corallo@arm.com>
>> Sent: Thursday, November 17, 2022 4:38 PM
>> To: gcc-patches@gcc.gnu.org
>> Cc: Kyrylo Tkachov <Kyrylo.Tkachov@arm.com>; Richard Earnshaw
>> <Richard.Earnshaw@arm.com>; Stam Markianos-Wright <Stam.Markianos-
>> Wright@arm.com>
>> Subject: [PATCH 15/35] arm: Explicitly specify other float types for _Generic
>> overloading [PR107515]
>>
>> From: Stam Markianos-Wright <stam.markianos-wright@arm.com>
>>
>> This patch adds explicit references to other float types
>> to __ARM_mve_typeid in arm_mve.h.  Resolves PR 107515:
>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107515
>>
>> gcc/ChangeLog:
>>          PR 107515
>>          * config/arm/arm_mve.h (__ARM_mve_typeid): Add float types.
> Argh, I'm looking forward to when we move away from this _Generic business, but for now ok.
Oh we all are ;)
> The ChangeLog should say "PR target/107515" for the git hook to recognize it IIRC.

Agh, thanks for spotting this! Will change and push it with the rest of 
the patch series when ready/

Thank you,

Stam


> Thanks,
> Kyrill
>
>> ---
>>   gcc/config/arm/arm_mve.h | 3 +++
>>   1 file changed, 3 insertions(+)
>>
>> diff --git a/gcc/config/arm/arm_mve.h b/gcc/config/arm/arm_mve.h
>> index fd1876b57a0..f6b42dc3fab 100644
>> --- a/gcc/config/arm/arm_mve.h
>> +++ b/gcc/config/arm/arm_mve.h
>> @@ -35582,6 +35582,9 @@ enum {
>>        short: __ARM_mve_type_int_n, \
>>        int: __ARM_mve_type_int_n, \
>>        long: __ARM_mve_type_int_n, \
>> +     _Float16: __ARM_mve_type_fp_n, \
>> +     __fp16: __ARM_mve_type_fp_n, \
>> +     float: __ARM_mve_type_fp_n, \
>>        double: __ARM_mve_type_fp_n, \
>>        long long: __ARM_mve_type_int_n, \
>>        unsigned char: __ARM_mve_type_int_n, \
>> --
>> 2.25.1
  
Stamatis Markianos-Wright Nov. 21, 2022, 2:11 p.m. UTC | #4
On 11/20/22 22:49, Ramana Radhakrishnan wrote:
> On Fri, Nov 18, 2022 at 4:59 PM Kyrylo Tkachov via Gcc-patches
> <gcc-patches@gcc.gnu.org> wrote:
>>
>>
>>> -----Original Message-----
>>> From: Andrea Corallo <andrea.corallo@arm.com>
>>> Sent: Thursday, November 17, 2022 4:38 PM
>>> To: gcc-patches@gcc.gnu.org
>>> Cc: Kyrylo Tkachov <Kyrylo.Tkachov@arm.com>; Richard Earnshaw
>>> <Richard.Earnshaw@arm.com>; Stam Markianos-Wright <Stam.Markianos-
>>> Wright@arm.com>
>>> Subject: [PATCH 15/35] arm: Explicitly specify other float types for _Generic
>>> overloading [PR107515]
>>>
>>> From: Stam Markianos-Wright <stam.markianos-wright@arm.com>
>>>
>>> This patch adds explicit references to other float types
>>> to __ARM_mve_typeid in arm_mve.h.  Resolves PR 107515:
>>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107515
>>>
>>> gcc/ChangeLog:
>>>          PR 107515
>>>          * config/arm/arm_mve.h (__ARM_mve_typeid): Add float types.
>> Argh, I'm looking forward to when we move away from this _Generic business, but for now ok.
>> The ChangeLog should say "PR target/107515" for the git hook to recognize it IIRC.
> and the PR is against 11.x - is there a plan to back port this and
> dependent patches to relevant branches ?

Hi Ramana!


Assuming maintainer approval, we do hope to backport.

And yes, it would have to be the whole patch series, so that we carry

over all the improved testing, as well (and we'll have to run it ofc).


Does that sound Ok?

Thank you,

Stam


>
> Ramana
>
>> Thanks,
>> Kyrill
>>
>>> ---
>>>   gcc/config/arm/arm_mve.h | 3 +++
>>>   1 file changed, 3 insertions(+)
>>>
>>> diff --git a/gcc/config/arm/arm_mve.h b/gcc/config/arm/arm_mve.h
>>> index fd1876b57a0..f6b42dc3fab 100644
>>> --- a/gcc/config/arm/arm_mve.h
>>> +++ b/gcc/config/arm/arm_mve.h
>>> @@ -35582,6 +35582,9 @@ enum {
>>>        short: __ARM_mve_type_int_n, \
>>>        int: __ARM_mve_type_int_n, \
>>>        long: __ARM_mve_type_int_n, \
>>> +     _Float16: __ARM_mve_type_fp_n, \
>>> +     __fp16: __ARM_mve_type_fp_n, \
>>> +     float: __ARM_mve_type_fp_n, \
>>>        double: __ARM_mve_type_fp_n, \
>>>        long long: __ARM_mve_type_int_n, \
>>>        unsigned char: __ARM_mve_type_int_n, \
>>> --
>>> 2.25.1
  

Patch

diff --git a/gcc/config/arm/arm_mve.h b/gcc/config/arm/arm_mve.h
index fd1876b57a0..f6b42dc3fab 100644
--- a/gcc/config/arm/arm_mve.h
+++ b/gcc/config/arm/arm_mve.h
@@ -35582,6 +35582,9 @@  enum {
 	short: __ARM_mve_type_int_n, \
 	int: __ARM_mve_type_int_n, \
 	long: __ARM_mve_type_int_n, \
+	_Float16: __ARM_mve_type_fp_n, \
+	__fp16: __ARM_mve_type_fp_n, \
+	float: __ARM_mve_type_fp_n, \
 	double: __ARM_mve_type_fp_n, \
 	long long: __ARM_mve_type_int_n, \
 	unsigned char: __ARM_mve_type_int_n, \