summaryrefslogtreecommitdiff
path: root/soft-fp/fmasf4.c
diff options
context:
space:
mode:
Diffstat (limited to 'soft-fp/fmasf4.c')
-rw-r--r--soft-fp/fmasf4.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/soft-fp/fmasf4.c b/soft-fp/fmasf4.c
index b770a0719f..81d94d6a44 100644
--- a/soft-fp/fmasf4.c
+++ b/soft-fp/fmasf4.c
@@ -1,5 +1,5 @@
/* Implement fmaf using soft-fp.
- Copyright (C) 2013-2015 Free Software Foundation, Inc.
+ Copyright (C) 2013-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -26,6 +26,15 @@
<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;
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wmaybe-uninitialized");
#include <math.h>
#include "soft-fp.h"
#include "single.h"
@@ -45,22 +54,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