about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWilco Dijkstra <wdijkstr@arm.com>2015-08-24 14:40:39 +0100
committerWilco Dijkstra <wdijkstr@arm.com>2015-08-24 14:42:28 +0100
commitf008c71455a8f23c2a24c451e61b12ddfca9a54f (patch)
tree4ad5b93a2988b90d231aeac814ed85f9df0b1670
parentc3b9ef8dfc83e9d17da5adc73709d2f7dfbbaf13 (diff)
downloadglibc-f008c71455a8f23c2a24c451e61b12ddfca9a54f.tar.gz
glibc-f008c71455a8f23c2a24c451e61b12ddfca9a54f.tar.xz
glibc-f008c71455a8f23c2a24c451e61b12ddfca9a54f.zip
2015-08-24 Wilco Dijkstra <wdijkstr@arm.com>
	* sysdeps/aarch64/fpu/math_private.h (libc_feholdsetround_aarch64_ctx):
	Unconditionally set __fpcr to avoid uninialized warning.
	(libc_feholdsetround_noex_aarch64_ctx): Likewise.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/aarch64/fpu/math_private.h12
2 files changed, 10 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index dae71cecec..a2a1fe0f8d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2015-08-24  Wilco Dijkstra  <wdijkstr@arm.com>
+
+	* sysdeps/aarch64/fpu/math_private.h (libc_feholdsetround_aarch64_ctx):
+	Unconditionally set __fpcr to avoid uninialized warning.
+	(libc_feholdsetround_noex_aarch64_ctx): Likewise.
+
 2015-08-24  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
 	* malloc/arena.c (arena_get_retry): Don't use main_arena if it
diff --git a/sysdeps/aarch64/fpu/math_private.h b/sysdeps/aarch64/fpu/math_private.h
index 1f02ddb05a..43bef1a63e 100644
--- a/sysdeps/aarch64/fpu/math_private.h
+++ b/sysdeps/aarch64/fpu/math_private.h
@@ -252,6 +252,7 @@ libc_feholdsetround_aarch64_ctx (struct rm_ctx *ctx, int r)
   int round;
 
   _FPU_GETCW (fpcr);
+  ctx->env.__fpcr = fpcr;
 
   /* Check whether rounding modes are different.  */
   round = (fpcr ^ r) & _FPU_FPCR_RM_MASK;
@@ -259,10 +260,7 @@ libc_feholdsetround_aarch64_ctx (struct rm_ctx *ctx, int r)
 
   /* Set the rounding mode if changed.  */
   if (__glibc_unlikely (round != 0))
-    {
-      ctx->env.__fpcr = fpcr;
-      _FPU_SETCW (fpcr ^ round);
-    }
+    _FPU_SETCW (fpcr ^ round);
 }
 
 #define libc_feholdsetround_ctx		libc_feholdsetround_aarch64_ctx
@@ -290,6 +288,7 @@ libc_feholdsetround_noex_aarch64_ctx (struct rm_ctx *ctx, int r)
 
   _FPU_GETCW (fpcr);
   _FPU_GETFPSR (fpsr);
+  ctx->env.__fpcr = fpcr;
   ctx->env.__fpsr = fpsr;
 
   /* Check whether rounding modes are different.  */
@@ -298,10 +297,7 @@ libc_feholdsetround_noex_aarch64_ctx (struct rm_ctx *ctx, int r)
 
   /* Set the rounding mode if changed.  */
   if (__glibc_unlikely (round != 0))
-    {
-      ctx->env.__fpcr = fpcr;
-      _FPU_SETCW (fpcr ^ round);
-    }
+    _FPU_SETCW (fpcr ^ round);
 }
 
 #define libc_feholdsetround_noex_ctx	libc_feholdsetround_noex_aarch64_ctx