This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ARM] hard VFP calling convention support [2/3]


Changes to the testsuite (there are new tests to add, but these will
come shortly).

	* testsuite/lib/target-supports.exp
	(check_effective_target_arm_hard_vfp_ok): New hook.
	(check_effective_target_arm_neon_ok): Improve test for neon
	availability.
	* testsuite/gcc.target/arm/eabi1.c: Only run test in base variant.

Index: testsuite/gcc.target/arm/eabi1.c
===================================================================
--- testsuite/gcc.target/arm/eabi1.c	(revision 142389)
+++ testsuite/gcc.target/arm/eabi1.c	(working copy)
@@ -1,4 +1,5 @@
 /* { dg-do run { target arm*-*-symbianelf* arm*-*-eabi* } } */
+/* { dg-skip-if  "Test is specific to base abi variant" { arm*-*-* } { "-mfloat-abi=*" } { "-mfloat-abi=soft -mfloat-abi=softfp" } } */
 /* { dg-options "" } */
 
 /* This file tests most of the non-C++ run-time helper functions
Index: testsuite/lib/target-supports.exp
===================================================================
--- testsuite/lib/target-supports.exp	(revision 142389)
+++ testsuite/lib/target-supports.exp	(working copy)
@@ -1266,6 +1266,20 @@ proc check_effective_target_arm_vfp_ok {
     }
 }
 
+# Return 1 if this is an ARM target supporting -mfpu=vfp
+# -mfloat-abi=hard.  Some multilibs may be incompatible with these
+# options.
+
+proc check_effective_target_arm_hard_vfp_ok { } {
+    if { [check_effective_target_arm32] } {
+	return [check_no_compiler_messages arm_hard_vfp_ok object {
+	    int dummy;
+	} "-mfpu=vfp -mfloat-abi=hard"]
+    } else {
+	return 0
+    }
+}
+
 # Return 1 if this is an ARM target supporting -mfpu=neon
 # -mfloat-abi=softfp.  Some multilibs may be incompatible with these
 # options.
@@ -1273,6 +1287,7 @@ proc check_effective_target_arm_vfp_ok {
 proc check_effective_target_arm_neon_ok { } {
     if { [check_effective_target_arm32] } {
         return [check_no_compiler_messages arm_neon_ok object {
+	    #include "arm-neon.h"
             int dummy;
         } "-mfpu=neon -mfloat-abi=softfp"]
     } else {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]