This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.16-ports-merge-701-g886ce14
- From: carlos at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 19 Nov 2012 05:29:07 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.16-ports-merge-701-g886ce14
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 886ce148c046f5ecc0b2c60f2c6858c0722d601f (commit)
from 030c5d66b80934fa1de9340f47749c8fdfadd8aa (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=886ce148c046f5ecc0b2c60f2c6858c0722d601f
commit 886ce148c046f5ecc0b2c60f2c6858c0722d601f
Author: Carlos O'Donell <carlos@systemhalted.org>
Date: Mon Nov 19 00:40:05 2012 -0500
hppa: Implement get-rounding-mode.h
Implement get_rounding_mode using the new fpu_control.h
support. Use get_rounding_mode from fegetround.
diff --git a/ports/ChangeLog.hppa b/ports/ChangeLog.hppa
index 3d8e9e6..4088793 100644
--- a/ports/ChangeLog.hppa
+++ b/ports/ChangeLog.hppa
@@ -1,5 +1,8 @@
2012-11-18 Carlos O'Donell <carlos@systemhalted.org>
+ * sysdeps/hppa/get-rounding-mode.h: New file.
+ * sysdeps/hppa/fpu/fegetround.c: Use get_rounding_mode.
+
* ports/sysdeps/hppa/fpu/fpu_control.h: New file.
* ports/sysdeps/hppa/__longjmp.S: Removed.
diff --git a/ports/sysdeps/hppa/fpu/fesetenv.c b/ports/sysdeps/hppa/fpu/fesetenv.c
index e768bb2..7a09e4d 100644
--- a/ports/sysdeps/hppa/fpu/fesetenv.c
+++ b/ports/sysdeps/hppa/fpu/fesetenv.c
@@ -40,7 +40,7 @@ fesetenv (const fenv_t *envp)
| (FE_ALL_EXCEPT << 27)
| FE_DOWNWARD);
if (envp == FE_DFL_ENV)
- ;
+ temp.env.__status_word = 0;
else if (envp == FE_NOMASK_ENV)
temp.env.__status_word |= FE_ALL_EXCEPT;
else
diff --git a/ports/sysdeps/hppa/get-rounding-mode.h b/ports/sysdeps/hppa/get-rounding-mode.h
new file mode 100644
index 0000000..16e5671
--- /dev/null
+++ b/ports/sysdeps/hppa/get-rounding-mode.h
@@ -0,0 +1,35 @@
+/* Determine floating-point rounding mode within libc. HP-PARISC version.
+ Copyright (C) 2012 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
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _HPPA_GET_ROUNDING_MODE_H
+#define _HPPA_GET_ROUNDING_MODE_H 1
+
+#include <fenv.h>
+#include <fpu_control.h>
+
+/* Return the floating-point rounding mode. */
+
+static inline int
+get_rounding_mode (void)
+{
+ fpu_control_t fc;
+ _FPU_GETCW (fc);
+ return fc & _FPU_HPPA_MASK_RM;
+}
+
+#endif /* get-rounding-mode.h */
-----------------------------------------------------------------------
Summary of changes:
ports/ChangeLog.hppa | 3 +++
ports/sysdeps/hppa/fpu/fesetenv.c | 2 +-
.../fpu => ports/sysdeps/hppa}/get-rounding-mode.h | 10 ++++------
3 files changed, 8 insertions(+), 7 deletions(-)
copy {sysdeps/s390/fpu => ports/sysdeps/hppa}/get-rounding-mode.h (83%)
hooks/post-receive
--
GNU C Library master sources