OSDN Git Service

2010-02-10 Joost VandeVondele <jv244@cam.ac.uk>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / builtins-44.c
index 2f5a3e1..1f1eaf0 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O1 -fno-trapping-math -fdump-tree-optimized" } */
+/* { dg-options "-O1 -fno-trapping-math -fno-finite-math-only -fdump-tree-optimized" } */
   
 extern void f(int);
 extern void link_error ();
@@ -12,29 +12,32 @@ int
 main ()
 {
   double pinf = __builtin_inf ();
+#ifndef __SPU__
+  /* The SPU single-precision floating point format does not support Inf.  */
   float pinff = __builtin_inff ();
+#endif
   long double pinfl = __builtin_infl ();
 
   if (__builtin_isinf (pinf) != 1)
     link_error ();
+#ifndef __SPU__
   if (__builtin_isinf (pinff) != 1)
     link_error ();
   if (__builtin_isinff (pinff) != 1)
     link_error ();
+#endif
   if (__builtin_isinf (pinfl) != 1)
     link_error ();
   if (__builtin_isinfl (pinfl) != 1)
     link_error ();
 
-  if (__builtin_isinf (-pinf) != -1)
+  if (__builtin_isinf_sign (-pinf) != -1)
     link_error ();
-  if (__builtin_isinf (-pinff) != -1)
+#ifndef __SPU__
+  if (__builtin_isinf_sign (-pinff) != -1)
     link_error ();
-  if (__builtin_isinff (-pinff) != -1)
-    link_error ();
-  if (__builtin_isinf (-pinfl) != -1)
-    link_error ();
-  if (__builtin_isinfl (-pinfl) != -1)
+#endif
+  if (__builtin_isinf_sign (-pinfl) != -1)
     link_error ();
 
   if (__builtin_isinf (4.0))
@@ -52,4 +55,4 @@ main ()
 
 /* Check that all instances of link_error were subject to DCE.  */
 /* { dg-final { scan-tree-dump-times "link_error" 0 "optimized" } } */
-
+/* { dg-final { cleanup-tree-dump "optimized" } } */