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?

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
>
From 8722a517e051309d6b021107273210d83a1a1ae6 Mon Sep 17 00:00:00 2001
From: Christophe Lyon <christophe.l...@linaro.org>
Date: Fri, 11 Sep 2020 11:43:56 +0000
Subject: [PATCH] libgcc/config/arm/fp16.c: Make _internal functions static
 inline
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This patch makes the *_internal functions 'static inline' 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 'static inline'
	qualifier.
---
 libgcc/config/arm/fp16.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/libgcc/config/arm/fp16.c b/libgcc/config/arm/fp16.c
index e8f7afb..3745671 100644
--- a/libgcc/config/arm/fp16.c
+++ b/libgcc/config/arm/fp16.c
@@ -165,7 +165,7 @@ __gnu_d2h_internal (unsigned long long a, int ieee)
   return __gnu_float2h_internal (&binary64, a, ieee);
 }
 
-unsigned int
+static inline unsigned int
 __gnu_h2f_internal(unsigned short a, int ieee)
 {
   unsigned int sign = (unsigned int)(a & 0x8000) << 16;
@@ -190,37 +190,37 @@ __gnu_h2f_internal(unsigned short a, int ieee)
   return sign | (((aexp + 0x70) << 23) + (mantissa << 13));
 }
 
-unsigned short
+static inline unsigned short
 __gnu_f2h_ieee(unsigned int a)
 {
   return __gnu_f2h_internal(a, 1);
 }
 
-unsigned int
+static inline unsigned int
 __gnu_h2f_ieee(unsigned short a)
 {
   return __gnu_h2f_internal(a, 1);
 }
 
-unsigned short
+static inline unsigned short
 __gnu_f2h_alternative(unsigned int x)
 {
   return __gnu_f2h_internal(x, 0);
 }
 
-unsigned int
+static inline unsigned int
 __gnu_h2f_alternative(unsigned short a)
 {
   return __gnu_h2f_internal(a, 0);
 }
 
-unsigned short
+static inline unsigned short
 __gnu_d2h_ieee (unsigned long long a)
 {
   return __gnu_d2h_internal (a, 1);
 }
 
-unsigned short
+static inline unsigned short
 __gnu_d2h_alternative (unsigned long long x)
 {
   return __gnu_d2h_internal (x, 0);
-- 
2.7.4

Reply via email to