aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2016-01-14 20:53:25 +0100
committerUros Bizjak <uros@gcc.gnu.org>2016-01-14 20:53:25 +0100
commit19643948dbeafd5444ba3059c1eef813ecd6e4ed (patch)
tree8fa385faa3d1693340828423494107afbf3e1d1f
parentfe79c97e0179f3a3dbfd2ac44b7b46f4a8ad3ff0 (diff)
downloadgcc-19643948dbeafd5444ba3059c1eef813ecd6e4ed.zip
gcc-19643948dbeafd5444ba3059c1eef813ecd6e4ed.tar.gz
gcc-19643948dbeafd5444ba3059c1eef813ecd6e4ed.tar.bz2
target-supports.exp (check_effective_target_issignaling): New procedure.
* lib/target-supports.exp (check_effective_target_issignaling): New procedure. * gcc.dg/pr61441.c: Require issignaling effective target. From-SVN: r232381
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gcc.dg/pr61441.c1
-rw-r--r--gcc/testsuite/lib/target-supports.exp13
3 files changed, 19 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4d451af..38b96a6 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2016-01-14 Uros Bizjak <ubizjak@gmail.com>
+
+ * lib/target-supports.exp (check_effective_target_issignaling):
+ New procedure.
+ * gcc.dg/pr61441.c: Require issignaling effective target.
+
2016-01-14 Segher Boessenkool <segher@kernel.crashing.org>
PR target/68803
diff --git a/gcc/testsuite/gcc.dg/pr61441.c b/gcc/testsuite/gcc.dg/pr61441.c
index 5d642e8..1b0f181 100644
--- a/gcc/testsuite/gcc.dg/pr61441.c
+++ b/gcc/testsuite/gcc.dg/pr61441.c
@@ -1,5 +1,6 @@
/* { dg-do run { target { *-*-linux* *-*-gnu* } } } */
/* { dg-options "-O1 -lm -fexcess-precision=standard" } */
+/* { dg-require-effective-target issignaling } */
#define _GNU_SOURCE
#include <stdio.h>
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index a930bd2..94e0b05 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -6287,8 +6287,19 @@ proc check_effective_target_pow10 { } {
} "-lm" ]
}
-# Return 1 if current options generate DFP instructions, 0 otherwise.
+# Return 1 if issignaling function exists.
+proc check_effective_target_issignaling {} {
+ return [check_runtime issignaling {
+ #define _GNU_SOURCE
+ #include <math.h>
+ int main ()
+ {
+ return issignaling (0.0);
+ }
+ } "-lm" ]
+}
+# Return 1 if current options generate DFP instructions, 0 otherwise.
proc check_effective_target_hard_dfp {} {
return [check_no_messages_and_pattern hard_dfp "!adddd3" assembly {
typedef float d64 __attribute__((mode(DD)));