From: uros Date: Thu, 14 Jan 2016 19:53:25 +0000 (+0000) Subject: * lib/target-supports.exp (check_effective_target_issignaling): X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=96962ae433d91eb6c532bc816e31f267b2e8eac3;p=thirdparty%2Fgcc.git * lib/target-supports.exp (check_effective_target_issignaling): New procedure. * gcc.dg/pr61441.c: Require issignaling effective target. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232381 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4d451af20d1b..38b96a6d48fe 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2016-01-14 Uros Bizjak + + * lib/target-supports.exp (check_effective_target_issignaling): + New procedure. + * gcc.dg/pr61441.c: Require issignaling effective target. + 2016-01-14 Segher Boessenkool PR target/68803 diff --git a/gcc/testsuite/gcc.dg/pr61441.c b/gcc/testsuite/gcc.dg/pr61441.c index 5d642e86ce57..1b0f1810d8a1 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 diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index a930bd2aab59..94e0b05a20a7 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 + 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)));