Hi Christophe,

> -----Original Message-----
> From: Christophe Lyon <christophe.l...@linaro.org>
> Sent: 17 September 2020 12:56
> To: Kyrylo Tkachov <kyrylo.tkac...@arm.com>
> Cc: i...@airs.com; gcc-patches@gcc.gnu.org
> Subject: Re: [PATCH] libgcc/config/arm/fp16.c: Add missing prototypes
> 
> On Thu, 17 Sep 2020 at 12:27, Kyrylo Tkachov <kyrylo.tkac...@arm.com>
> wrote:
> >
> >
> >
> > > -----Original Message-----
> > > From: Christophe Lyon <christophe.l...@linaro.org>
> > > Sent: 11 September 2020 20:05
> > > To: Kyrylo Tkachov <kyrylo.tkac...@arm.com>
> > > Cc: i...@airs.com; gcc-patches@gcc.gnu.org
> > > Subject: Re: [PATCH] libgcc/config/arm/fp16.c: Add missing prototypes
> > >
> > > On Fri, 11 Sep 2020 at 14:35, Kyrylo Tkachov <kyrylo.tkac...@arm.com>
> > > wrote:
> > > >
> > > > Hi Christophe,
> > > >
> > > > > -----Original Message-----
> > > > > From: Gcc-patches <gcc-patches-boun...@gcc.gnu.org> On Behalf
> Of
> > > > > Christophe Lyon via Gcc-patches
> > > > > Sent: 11 September 2020 13:23
> > > > > To: gcc-patches@gcc.gnu.org; i...@airs.com
> > > > > Subject: [PATCH] libgcc/config/arm/fp16.c: Add missing prototypes
> > > > >
> > > > > This patch adds the missing prototypes for the fonctions defined in
> fp16.c,
> > > to
> > > > > avoid these warnings during the build:
> > > > > /libgcc/config/arm/fp16.c:169:1: warning: no previous prototype for
> > > > > '__gnu_h2f_internal' [-Wmissing-prototypes]
> > > > > /libgcc/config/arm/fp16.c:194:1: warning: no previous prototype for
> > > > > '__gnu_f2h_ieee' [-Wmissing-prototypes]
> > > > > /libgcc/config/arm/fp16.c:200:1: warning: no previous prototype for
> > > > > '__gnu_h2f_ieee' [-Wmissing-prototypes]
> > > > > /libgcc/config/arm/fp16.c:206:1: warning: no previous prototype for
> > > > > '__gnu_f2h_alternative' [-Wmissing-prototypes]
> > > > > /libgcc/config/arm/fp16.c:212:1: warning: no previous prototype for
> > > > > '__gnu_h2f_alternative' [-Wmissing-prototypes]
> > > > > /libgcc/config/arm/fp16.c:218:1: warning: no previous prototype for
> > > > > '__gnu_d2h_ieee' [-Wmissing-prototypes]
> > > > > /libgcc/config/arm/fp16.c:224:1: warning: no previous prototype for
> > > > > '__gnu_d2h_alternative' [-Wmissing-prototypes]
> > > > >
> > > > > 2020-09-11  Torbjörn SVENSSON  <torbjorn.svens...@st.com>
> > > > >       Christophe Lyon  <christophe.l...@linaro.org>
> > > > >
> > > > >       libgcc/
> > > > >       * config/arm/fp16.c (__gnu_h2f_internal, __gnu_f2h_ieee)
> > > > >       (__gnu_h2f_ieee, __gnu_f2h_alternative, __gnu_h2f_alternative)
> > > > >       (__gnu_d2h_ieee, __gnu_d2h_alternative): Add missing
> prototypes.
> > > > > ---
> > > > >  libgcc/config/arm/fp16.c | 9 +++++++++
> > > > >  1 file changed, 9 insertions(+)
> > > > >
> > > > > diff --git a/libgcc/config/arm/fp16.c b/libgcc/config/arm/fp16.c
> > > > > index e8f7afb..3d1d8f4 100644
> > > > > --- a/libgcc/config/arm/fp16.c
> > > > > +++ b/libgcc/config/arm/fp16.c
> > > > > @@ -52,6 +52,15 @@ binary64 =
> > > > >    52     /* significand.  */
> > > > >  };
> > > > >
> > > > > +/* Function prototypes */
> > > > > +unsigned int __gnu_h2f_internal(unsigned short a, int ieee);
> > > >
> > > > I think this function should just be marked as static, as it is truly 
> > > > internal
> to
> > > this file, whereas the other ones can be called from code emitted in
> > > config/arm/arm.c
> > > >
> > >
> > > Right, this updated patch does that, like for the other functions in
> > > the same file.
> > >
> > > OK?
> >
> > Sorry, I think just __gnu_h2f_internal Needs to be static.
> > From what I can tell the other ones need to be exported as they can be
> generated from config/arm/arm.c so they do need the prototypes if I
> understand correctly.
> >
> 
> Ha sorry, I read too fast.
> And I only checked that the build completed and wasn't producing the
> warnings.....
> 
> I guess this new version is what you initially meant?

Yes.
+/* Function prototypes */

Full stop and two spaces at the end of the comment.
Ok with that change.
Thanks,
Kyrill

+unsigned short __gnu_f2h_ieee(unsigned int a);
+unsigned int __gnu_h2f_ieee(unsigned short a);
+unsigned short __gnu_f2h_alternative(unsigned int x);
+unsigned int __gnu_h2f_alternative(unsigned short a);
+unsigned short __gnu_d2h_ieee (unsigned long long a);
+unsigned short __gnu_d2h_alternative (unsigned long long x);

> 
> Thanks
> Christophe
> 
> > Thanks,
> > Kyrill
> >
> > >
> > > Thanks
> > >
> > > Christophe
> > >
> > > > Thanks,
> > > > Kyrill
> > > >
> > > > > +unsigned short __gnu_f2h_ieee(unsigned int a);
> > > > > +unsigned int __gnu_h2f_ieee(unsigned short a);
> > > > > +unsigned short __gnu_f2h_alternative(unsigned int x);
> > > > > +unsigned int __gnu_h2f_alternative(unsigned short a);
> > > > > +unsigned short __gnu_d2h_ieee (unsigned long long a);
> > > > > +unsigned short __gnu_d2h_alternative (unsigned long long x);
> > > > > +
> > > > >  static inline unsigned short
> > > > >  __gnu_float2h_internal (const struct format* fmt,
> > > > >                       unsigned long long a, int ieee)
> > > > > --
> > > > > 2.7.4
> > > >

Reply via email to