[PATCH, MIPS, COMMITTED] Testsuite fixes for soft-float configurations

Matthew Fortune Matthew.Fortune@imgtec.com
Tue Nov 25 16:05:00 GMT 2014


Re: https://gcc.gnu.org/ml/gcc-patches/2014-11/msg02879.html

The new FPXX tests now work correctly for soft-float configurations.
Tests should only need to specify one of the 5 floating-point options
and any other options are then inferred from that. The FPXX tests
were the first tests to really rely on -mfp* options which is why
we hadn't seen this issue before. Using a -mfp option implies that
the test is hard-float and double float. To create a test that is
single-float then only the -msingle-float option should be used
without specifying a -mfp option. I have not done anything to improve
single-float testsuite support in this patch though.

I committed this via a git-svn bridge so fingers crossed it went in
correctly! I also used the ChangeLog merging script from the link
below which is a marvellous invention if others don't know of it.

https://gcc.gnu.org/wiki/GitMirror#git-merge-changelog

Thanks,
Matthew

gcc/testuite/

	* gcc.target/mips/mips.exp: Add support for -msoft-float
	and -mhard-float options.  Ensure that explicit -mfp*
	options imply both -mhard-float and -mdouble-float.
	* gcc.target/mips/call-clobbered-1.c: Add -mhard-float to the
	compile options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218047 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/testsuite/ChangeLog                          | 8 ++++++++
 gcc/testsuite/gcc.target/mips/call-clobbered-1.c | 2 +-
 gcc/testsuite/gcc.target/mips/mips.exp           | 8 ++++++++
 3 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index b577824..7b9b365 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2014-11-25  Matthew Fortune  <matthew.fortune@imgtec.com>
+
+	* gcc.target/mips/mips.exp: Add support for -msoft-float and
+	-mhard-float options.  Ensure that explicit -mfp* options imply
+	both -mhard-float and -mdouble-float.
+	* gcc.target/mips/call-clobbered-1.c: Add -mhard-float to the
+	compile options.
+
 2014-11-25  Paolo Carlini  <paolo.carlini@oracle.com>
 
 	PR c++/63786
diff --git a/gcc/testsuite/gcc.target/mips/call-clobbered-1.c b/gcc/testsuite/gcc.target/mips/call-clobbered-1.c
index ecb994f..77294aa 100644
--- a/gcc/testsuite/gcc.target/mips/call-clobbered-1.c
+++ b/gcc/testsuite/gcc.target/mips/call-clobbered-1.c
@@ -1,6 +1,6 @@
 /* Check that we handle call-clobbered FPRs correctly.  */
 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
-/* { dg-options "isa>=2 -mabi=32 -ffixed-f0 -ffixed-f1 -ffixed-f2 -ffixed-f3 -ffixed-f4 -ffixed-f5 -ffixed-f6 -ffixed-f7 -ffixed-f8 -ffixed-f9 -ffixed-f10 -ffixed-f11 -ffixed-f12 -ffixed-f13 -ffixed-f14 -ffixed-f15 -ffixed-f16 -ffixed-f17 -ffixed-f18 -ffixed-f19" } */
+/* { dg-options "isa>=2 -mabi=32 -mhard-float -ffixed-f0 -ffixed-f1 -ffixed-f2 -ffixed-f3 -ffixed-f4 -ffixed-f5 -ffixed-f6 -ffixed-f7 -ffixed-f8 -ffixed-f9 -ffixed-f10 -ffixed-f11 -ffixed-f12 -ffixed-f13 -ffixed-f14 -ffixed-f15 -ffixed-f16 -ffixed-f17 -ffixed-f18 -ffixed-f19" } */
 
 void bar (void);
 double a;
diff --git a/gcc/testsuite/gcc.target/mips/mips.exp b/gcc/testsuite/gcc.target/mips/mips.exp
index a9beb27..6ae71ad 100644
--- a/gcc/testsuite/gcc.target/mips/mips.exp
+++ b/gcc/testsuite/gcc.target/mips/mips.exp
@@ -234,6 +234,7 @@ set mips_option_groups {
     dump_pattern "-dp"
     endianness "-E(L|B)|-me(l|b)"
     float "-m(hard|soft)-float"
+    fpu "-m(double|single)-float"
     forbid_cpu "forbid_cpu=.*"
     fp "-mfp(32|xx|64)"
     gp "-mgp(32|64)"
@@ -858,6 +859,8 @@ proc mips-dg-finish {} {
 #            |                           |
 #         -modd-spreg                 -mno-odd-spreg
 #            |                           |
+#         -mdouble-float              -msingle-float
+#            |                           |
 #         -mabs=2008/-mabs=legacy     <no option>
 #            |                           |
 #         -mhard-float                -msoft-float
@@ -947,7 +950,12 @@ proc mips-dg-options { args } {
     mips_option_dependency options "-mips3d" "-mpaired-single"
     mips_option_dependency options "-mpaired-single" "-mfp64"
     mips_option_dependency options "-mfp64" "-mhard-float"
+    mips_option_dependency options "-mfp32" "-mhard-float"
+    mips_option_dependency options "-mfpxx" "-mhard-float"
     mips_option_dependency options "-mfp64" "-modd-spreg"
+    mips_option_dependency options "-mfp64" "-mdouble-float"
+    mips_option_dependency options "-mfp32" "-mdouble-float"
+    mips_option_dependency options "-mfpxx" "-mdouble-float"
     mips_option_dependency options "-mabs=2008" "-mhard-float"
     mips_option_dependency options "-mabs=legacy" "-mhard-float"
     mips_option_dependency options "-mrelax-pic-calls" "-mno-plt"
-- 
1.9.4



More information about the Gcc-patches mailing list