OSDN Git Service

PR testsuite/37630
authorjanis <janis@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Mar 2009 19:59:37 +0000 (19:59 +0000)
committerjanis <janis@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Mar 2009 19:59:37 +0000 (19:59 +0000)
* lib/target-supports.exp (check_effective_target_ieee): New.
* gcc.c-torture/execute/ieee/ieee.exp: Use it.
* gcc.dg/20001012-1.c: Require ieee.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@144891 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/ieee/ieee.exp
gcc/testsuite/gcc.dg/20001012-1.c
gcc/testsuite/lib/target-supports.exp

index 077597d..1ebe5d1 100644 (file)
@@ -1,5 +1,10 @@
 2009-03-16  Janis Johnson  <janis187@us.ibm.com>
 
+       PR testsuite/37630
+       * lib/target-supports.exp (check_effective_target_ieee): New.
+       * gcc.c-torture/execute/ieee/ieee.exp: Use it.
+       * gcc.dg/20001012-1.c: Require ieee.
+
        PR testsuite/37628
        * gcc.c-torture/execute/pr35456.x: New, skip test for vax.
 
index 048e65f..1ecfc6d 100644 (file)
@@ -28,7 +28,7 @@ load_lib c-torture.exp
 # C torture test suite, and other contributors.
 
 # Disable tests on machines with no hardware support for IEEE arithmetic.
-if { [istarget "vax-*-*"] || [ istarget "powerpc-*-*spe"] } { return }
+if { ![check_effective_target_ieee] } { return }
 
 if $tracelevel then {
     strace $tracelevel
index eda69c0..a7abbb2 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-do run { target fpic } } */
+/* { dg-do run { target { fpic && ieee } } } */
 /* { dg-options "-O2 -fpic" } */
 
 extern void abort (void);
index 115f992..3838899 100644 (file)
@@ -2846,3 +2846,19 @@ proc check_effective_target_correct_iso_cpp_string_wchar_protos { } {
        #endif
     }]
 }
+
+# Return 1 if the target supports IEEE arithmetic.
+
+proc check_effective_target_ieee { } {
+    global et_ieee_saved
+
+    if { ![info exists et_ieee_saved] } {
+       set et_ieee_saved 1
+       if { [istarget vax-*-*]
+            || [istarget powerpc-*-*spe*] } {
+           set et_ieee_saved 0
+       }
+    }
+
+    return $et_ieee_saved
+}