summaryrefslogtreecommitdiff
path: root/gcc/real.h
diff options
context:
space:
mode:
authorssaraswati <ssaraswati@138bc75d-0d04-0410-961f-82ee72b054a4>2015-12-19 04:57:57 +0000
committerssaraswati <ssaraswati@138bc75d-0d04-0410-961f-82ee72b054a4>2015-12-19 04:57:57 +0000
commit7825c5b2d929859b650737df4c2ea09e1a0d282b (patch)
treeec918de3ae6e7c63dd169f8846d57718664be040 /gcc/real.h
parent5ab11d5e9d155358a1bfbef101848ea51e90e079 (diff)
downloadgcc-7825c5b2d929859b650737df4c2ea09e1a0d282b.tar.gz
This series of patches fix PR61441. This patch adds REAL_VALUE_ISSIGNALING_NAN.
Bootstrapped & regression-tested on x86_64-linux-gnu. gcc/ * real.c (real_issignaling_nan): New. * real.h (real_issignaling_nan, REAL_VALUE_ISSIGNALING_NAN): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231848 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/real.h')
-rw-r--r--gcc/real.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/real.h b/gcc/real.h
index df5ccc95ee5..f92c480c6e3 100644
--- a/gcc/real.h
+++ b/gcc/real.h
@@ -262,6 +262,9 @@ extern bool real_isinf (const REAL_VALUE_TYPE *);
/* Determine whether a floating-point value X is a NaN. */
extern bool real_isnan (const REAL_VALUE_TYPE *);
+/* Determine whether a floating-point value X is a signaling NaN. */
+extern bool real_issignaling_nan (const REAL_VALUE_TYPE *);
+
/* Determine whether a floating-point value X is finite. */
extern bool real_isfinite (const REAL_VALUE_TYPE *);
@@ -357,6 +360,9 @@ extern const struct real_format arm_half_format;
/* Determine whether a floating-point value X is a NaN. */
#define REAL_VALUE_ISNAN(x) real_isnan (&(x))
+/* Determine whether a floating-point value X is a signaling NaN. */
+#define REAL_VALUE_ISSIGNALING_NAN(x) real_issignaling_nan (&(x))
+
/* Determine whether a floating-point value X is negative. */
#define REAL_VALUE_NEGATIVE(x) real_isneg (&(x))