aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2006-10-31 19:58:21 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2006-10-31 19:58:21 +0000
commitc03b92063ae78b701d2d53f4fe46f16a3f6a39ba (patch)
tree992be231677f5ad1300f4298d9781a08bc697efd /gcc
parentb5ace3b78346ae029998488057606133f714f222 (diff)
downloadgcc-c03b92063ae78b701d2d53f4fe46f16a3f6a39ba.zip
gcc-c03b92063ae78b701d2d53f4fe46f16a3f6a39ba.tar.gz
gcc-c03b92063ae78b701d2d53f4fe46f16a3f6a39ba.tar.bz2
target-supports.exp (get_compiler_messages): Append options as a single list element.
2006-10-31 Joseph Myers <joseph@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * lib/target-supports.exp (get_compiler_messages): Append options as a single list element. (check_effective_target_arm_vfp_ok): New. * gcc.dg/arm-vfp1.c: Use arm_vfp_ok. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r118334
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog8
-rw-r--r--gcc/testsuite/gcc.dg/arm-vfp1.c3
-rw-r--r--gcc/testsuite/lib/target-supports.exp16
3 files changed, 24 insertions, 3 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index ec77c16..28d64cb 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2006-10-31 Joseph Myers <joseph@codesourcery.com>
+ Richard Sandiford <richard@codesourcery.com>
+
+ * lib/target-supports.exp (get_compiler_messages): Append options
+ as a single list element.
+ (check_effective_target_arm_vfp_ok): New.
+ * gcc.dg/arm-vfp1.c: Use arm_vfp_ok.
+
2006-10-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29387
diff --git a/gcc/testsuite/gcc.dg/arm-vfp1.c b/gcc/testsuite/gcc.dg/arm-vfp1.c
index 3b6a45d..bbf9140 100644
--- a/gcc/testsuite/gcc.dg/arm-vfp1.c
+++ b/gcc/testsuite/gcc.dg/arm-vfp1.c
@@ -1,7 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mfpu=vfp -mfloat-abi=softfp" } */
-/* { dg-require-effective-target arm32 } */
-/* { dg-skip-if "" { *-*-* } { "-mcpu=iwmmxt" "-march=iwmmxt" } { "" } } */
+/* { dg-require-effective-target arm_vfp_ok } */
extern float fabsf (float);
extern float sqrtf (float);
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 9972247..89bb9d1 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -37,7 +37,7 @@ proc get_compiler_messages {basename want_output type contents args} {
global tool
if { [llength $args] > 0 } {
- set options "additional_flags=[lindex $args 0]"
+ set options [list "additional_flags=[lindex $args 0]"]
} else {
set options ""
}
@@ -1298,6 +1298,20 @@ proc check_effective_target_arm32 { } {
return $et_arm32_saved
}
+# Return 1 if this is an ARM target supporting -mfpu=vfp
+# -mfloat-abi=softfp. Some multilibs may be incompatible with these
+# options.
+
+proc check_effective_target_arm_vfp_ok { } {
+ if { [check_effective_target_arm32] } {
+ return [check_no_compiler_messages arm_vfp_ok object {
+ int dummy;
+ } "-mfpu=vfp -mfloat-abi=softfp"]
+ } else {
+ return 0
+ }
+}
+
# Return 1 if this is a PowerPC target with floating-point registers.
proc check_effective_target_powerpc_fprs { } {