Don't use -Wno-uninitialized in math/

Message ID 1440631106.14154.20.camel@ubuntu-sellcey
State Committed
Headers

Commit Message

Steve Ellcey Aug. 26, 2015, 11:18 p.m. UTC
  On Wed, 2015-08-26 at 16:13 -0700, Roland McGrath wrote:
> > OK, here is a new version of the patch including sys/cdefs.h instead of
> > features.h and moving the comments about the DIAG up with the actual
> 
> You forgot to update the log entry.

Argh, you are right.


2015-08-26  Steve Ellcey  <sellcey@imgtec.com>

	* soft-fp/fmasf4.c: Add include of sys/cdefs.h.
	Move DIAG_PUSH_NEEDS_COMMENT, DIAG_IGNORE_NEEDS_COMMENT to front of
	file, move DIAG_POP_NEEDS_COMMENT to end of file.
	* soft-fp/fmadf4.c: Ditto.
	* soft-fp/fmatf4.c: Ditto.
  

Comments

Joseph Myers Aug. 27, 2015, midnight UTC | #1
On Wed, 26 Aug 2015, Steve Ellcey wrote:

> On Wed, 2015-08-26 at 16:13 -0700, Roland McGrath wrote:
> > > OK, here is a new version of the patch including sys/cdefs.h instead of
> > > features.h and moving the comments about the DIAG up with the actual
> > 
> > You forgot to update the log entry.
> 
> Argh, you are right.
> 
> 
> 2015-08-26  Steve Ellcey  <sellcey@imgtec.com>
> 
> 	* soft-fp/fmasf4.c: Add include of sys/cdefs.h.
> 	Move DIAG_PUSH_NEEDS_COMMENT, DIAG_IGNORE_NEEDS_COMMENT to front of
> 	file, move DIAG_POP_NEEDS_COMMENT to end of file.
> 	* soft-fp/fmadf4.c: Ditto.
> 	* soft-fp/fmatf4.c: Ditto.

OK.
  
Chris Metcalf Aug. 27, 2015, 5:20 p.m. UTC | #2
On 08/26/2015 07:18 PM, Steve Ellcey wrote:
> On Wed, 2015-08-26 at 16:13 -0700, Roland McGrath wrote:
>>> OK, here is a new version of the patch including sys/cdefs.h instead of
>>> features.h and moving the comments about the DIAG up with the actual
>> You forgot to update the log entry.
> Argh, you are right.
>
>
> 2015-08-26  Steve Ellcey  <sellcey@imgtec.com>
>
> 	* soft-fp/fmasf4.c: Add include of sys/cdefs.h.
> 	Move DIAG_PUSH_NEEDS_COMMENT, DIAG_IGNORE_NEEDS_COMMENT to front of
> 	file, move DIAG_POP_NEEDS_COMMENT to end of file.
> 	* soft-fp/fmadf4.c: Ditto.
> 	* soft-fp/fmatf4.c: Ditto.

This fixes the build failure for tilegx with gcc 4.8.2 as well.
  
Steve Ellcey Aug. 27, 2015, 5:25 p.m. UTC | #3
On Thu, 2015-08-27 at 13:20 -0400, Chris Metcalf wrote:
> On 08/26/2015 07:18 PM, Steve Ellcey wrote:
> > On Wed, 2015-08-26 at 16:13 -0700, Roland McGrath wrote:
> >>> OK, here is a new version of the patch including sys/cdefs.h instead of
> >>> features.h and moving the comments about the DIAG up with the actual
> >> You forgot to update the log entry.
> > Argh, you are right.
> >
> >
> > 2015-08-26  Steve Ellcey  <sellcey@imgtec.com>
> >
> > 	* soft-fp/fmasf4.c: Add include of sys/cdefs.h.
> > 	Move DIAG_PUSH_NEEDS_COMMENT, DIAG_IGNORE_NEEDS_COMMENT to front of
> > 	file, move DIAG_POP_NEEDS_COMMENT to end of file.
> > 	* soft-fp/fmadf4.c: Ditto.
> > 	* soft-fp/fmatf4.c: Ditto.
> 
> This fixes the build failure for tilegx with gcc 4.8.2 as well.

Excellent, my MIPS testing went fine last night and so I checked it in
this morning.

Steve Ellcey
sellcey@imgtec.com
  

Patch

diff --git a/soft-fp/fmadf4.c b/soft-fp/fmadf4.c
index da6749d..9330948 100644
--- a/soft-fp/fmadf4.c
+++ b/soft-fp/fmadf4.c
@@ -26,6 +26,19 @@ 
    <http://www.gnu.org/licenses/>.  */
 
 #include <libc-internal.h>
+#include <sys/cdefs.h>
+/* R_e is not set in cases where it is not used in packing, but the
+   compiler does not see that it is set in all cases where it is
+   used, resulting in warnings that it may be used uninitialized.
+   The location of the warning differs in different versions of GCC,
+   it may be where R is defined using a macro or it may be where the
+   macro is defined.  */
+DIAG_PUSH_NEEDS_COMMENT;
+#if __GNUC_PREREQ (4, 7)
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
+#else
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized");
+#endif
 #include <math.h>
 #include "soft-fp.h"
 #include "double.h"
@@ -45,22 +58,13 @@  __fma (double a, double b, double c)
   FP_UNPACK_D (B, b);
   FP_UNPACK_D (C, c);
   FP_FMA_D (R, A, B, C);
-  /* R_e is not set in cases where it is not used in packing, but the
-     compiler does not see that it is set in all cases where it is
-     used, resulting in warnings that it may be used
-     uninitialized.  */
-  DIAG_PUSH_NEEDS_COMMENT;
-#if __GNUC_PREREQ (4, 7)
-  DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
-#else
-  DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized");
-#endif
   FP_PACK_D (r, R);
-  DIAG_POP_NEEDS_COMMENT;
   FP_HANDLE_EXCEPTIONS;
 
   return r;
 }
+DIAG_POP_NEEDS_COMMENT;
+
 #ifndef __fma
 weak_alias (__fma, fma)
 #endif
diff --git a/soft-fp/fmasf4.c b/soft-fp/fmasf4.c
index b770a07..359d49c 100644
--- a/soft-fp/fmasf4.c
+++ b/soft-fp/fmasf4.c
@@ -26,6 +26,19 @@ 
    <http://www.gnu.org/licenses/>.  */
 
 #include <libc-internal.h>
+#include <sys/cdefs.h>
+/* R_e is not set in cases where it is not used in packing, but the
+   compiler does not see that it is set in all cases where it is
+   used, resulting in warnings that it may be used uninitialized.
+   The location of the warning differs in different versions of GCC,
+   it may be where R is defined using a macro or it may be where the
+   macro is defined.  */
+DIAG_PUSH_NEEDS_COMMENT;
+#if __GNUC_PREREQ (4, 7)
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
+#else
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized");
+#endif
 #include <math.h>
 #include "soft-fp.h"
 #include "single.h"
@@ -45,22 +58,13 @@  __fmaf (float a, float b, float c)
   FP_UNPACK_S (B, b);
   FP_UNPACK_S (C, c);
   FP_FMA_S (R, A, B, C);
-  /* R_e is not set in cases where it is not used in packing, but the
-     compiler does not see that it is set in all cases where it is
-     used, resulting in warnings that it may be used
-     uninitialized.  */
-  DIAG_PUSH_NEEDS_COMMENT;
-#if __GNUC_PREREQ (4, 7)
-  DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
-#else
-  DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized");
-#endif
   FP_PACK_S (r, R);
-  DIAG_POP_NEEDS_COMMENT;
   FP_HANDLE_EXCEPTIONS;
 
   return r;
 }
+DIAG_POP_NEEDS_COMMENT;
+
 #ifndef __fmaf
 weak_alias (__fmaf, fmaf)
 #endif
diff --git a/soft-fp/fmatf4.c b/soft-fp/fmatf4.c
index 880961c..9c99303 100644
--- a/soft-fp/fmatf4.c
+++ b/soft-fp/fmatf4.c
@@ -26,6 +26,19 @@ 
    <http://www.gnu.org/licenses/>.  */
 
 #include <libc-internal.h>
+#include <sys/cdefs.h>
+/* R_e is not set in cases where it is not used in packing, but the
+   compiler does not see that it is set in all cases where it is
+   used, resulting in warnings that it may be used uninitialized.
+   The location of the warning differs in different versions of GCC,
+   it may be where R is defined using a macro or it may be where the
+   macro is defined.  */
+DIAG_PUSH_NEEDS_COMMENT;
+#if __GNUC_PREREQ (4, 7)
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
+#else
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized");
+#endif
 #include <math.h>
 #include "soft-fp.h"
 #include "quad.h"
@@ -45,20 +58,11 @@  __fmal (long double a, long double b, long double c)
   FP_UNPACK_Q (B, b);
   FP_UNPACK_Q (C, c);
   FP_FMA_Q (R, A, B, C);
-  /* R_e is not set in cases where it is not used in packing, but the
-     compiler does not see that it is set in all cases where it is
-     used, resulting in warnings that it may be used
-     uninitialized.  */
-  DIAG_PUSH_NEEDS_COMMENT;
-#if __GNUC_PREREQ (4, 7)
-  DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
-#else
-  DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wuninitialized");
-#endif
   FP_PACK_Q (r, R);
-  DIAG_POP_NEEDS_COMMENT;
   FP_HANDLE_EXCEPTIONS;
 
   return r;
 }
+DIAG_POP_NEEDS_COMMENT;
+
 weak_alias (__fmal, fmal)