OSDN Git Service

gcc/testsuite/
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 9 Feb 2007 13:49:14 +0000 (13:49 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 9 Feb 2007 13:49:14 +0000 (13:49 +0000)
* lib/target-supports.exp (check_effective_target_coldfire_fpu): New
procedure.
* gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: XFAIL on
m68k targets if check_effective_target_coldfire_fpu returns true.

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

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/ieee/mul-subnormal-single-1.x
gcc/testsuite/lib/target-supports.exp

index 8575ad5..4870ee4 100644 (file)
@@ -1,3 +1,10 @@
+2007-02-09  Richard Sandiford  <richard@codesourcery.com>
+
+       * lib/target-supports.exp (check_effective_target_coldfire_fpu): New
+       procedure.
+       * gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: XFAIL on
+       m68k targets if check_effective_target_coldfire_fpu returns true.
+
 2007-02-09  Zdenek Dvorak  <dvorakz@suse.cz>
        Richard Guenther  <rguenther@suse.de>
 
index 8e3b5f1..bb8aa07 100644 (file)
@@ -3,4 +3,9 @@ if [istarget "mips-sgi-irix6*"] {
     # isn't expected to work for n32 and n64 on MIPS IV targets.
     return 1
 }
+if {[istarget "m68k-*-linux-gnu*"] && [check_effective_target_coldfire_fpu]} {
+    # ColdFire FPUs require software handling of subnormals.  Linux 2.6.10
+    # does not have this.
+    set torture_execute_xfail "m68k-*-linux-gnu*"
+}
 return 0
index 2c9d3c4..7c4d4b5 100644 (file)
@@ -2024,6 +2024,16 @@ proc check_effective_target_sync_char_short { } {
     return $et_sync_char_short_saved
 }
 
+# Return 1 if the target uses a ColdFire FPU.
+
+proc check_effective_target_coldfire_fpu { } {
+    return [check_no_compiler_messages coldfire_fpu assembly {
+       #ifndef __mcffpu__
+       #error FOO
+       #endif
+    }]
+}
+
 # Return 1 if the target matches the effective target 'arg', 0 otherwise.
 # This can be used with any check_* proc that takes no argument and
 # returns only 1 or 0.  It could be used with check_* procs that take