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: [PATCH] Allow MIPS call-saved-{4-6}.c tests to correctly run for micromips


 
> I have tested this for both mips and micromips, and the tests now pass
> successfully.
> The ChangeLog and patch are below.
> 
> Ok to commit?

Since you had not got to committing this yet. I have added the micromips
variants of the tests and committed your patch for you. Thanks for
finding the failures.

Thanks,
Matthew

gcc/testsuite/

	* gcc.target/mips/call-saved-4.c (foo): Add NOCOMPRESSION.
	* gcc.target/mips/call-saved-5.c (foo): Likewise.
	* gcc.target/mips/call-saved-6.c (foo): Likewise.
	* gcc.target/mips/call-saved-7.c: New file.
	* gcc.target/mips/call-saved-8.c: New file.
	* gcc.target/mips/call-saved-9.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219640 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/testsuite/ChangeLog                      | 10 ++++++++++
 gcc/testsuite/gcc.target/mips/call-saved-4.c |  2 +-
 gcc/testsuite/gcc.target/mips/call-saved-5.c |  2 +-
 gcc/testsuite/gcc.target/mips/call-saved-6.c |  2 +-
 gcc/testsuite/gcc.target/mips/call-saved-7.c | 25 +++++++++++++++++++++++++
 gcc/testsuite/gcc.target/mips/call-saved-8.c | 25 +++++++++++++++++++++++++
 gcc/testsuite/gcc.target/mips/call-saved-9.c | 25 +++++++++++++++++++++++++
 7 files changed, 88 insertions(+), 3 deletions(-)
 create mode 100644 gcc/testsuite/gcc.target/mips/call-saved-7.c
 create mode 100644 gcc/testsuite/gcc.target/mips/call-saved-8.c
 create mode 100644 gcc/testsuite/gcc.target/mips/call-saved-9.c

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 6b73d31..1285633 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2015-01-15  Andrew Bennett  <andrew.bennett@imgtec.com>
+	    Matthew Fortune  <matthew.fortune@imgtec.com>
+
+	* gcc.target/mips/call-saved-4.c (foo): Add NOCOMPRESSION.
+	* gcc.target/mips/call-saved-5.c (foo): Likewise.
+	* gcc.target/mips/call-saved-6.c (foo): Likewise.
+	* gcc.target/mips/call-saved-7.c: New file.
+	* gcc.target/mips/call-saved-8.c: New file.
+	* gcc.target/mips/call-saved-9.c: New file.
+
 2015-01-14  Matthew Fortune  <matthew.fortune@imgtec.com>
 
 	* gcc.target/mips/lsa.c: New file.
diff --git a/gcc/testsuite/gcc.target/mips/call-saved-4.c b/gcc/testsuite/gcc.target/mips/call-saved-4.c
index 846ea32..92881c4 100644
--- a/gcc/testsuite/gcc.target/mips/call-saved-4.c
+++ b/gcc/testsuite/gcc.target/mips/call-saved-4.c
@@ -3,7 +3,7 @@
 
 void bar (void);
 
-void
+NOCOMPRESSION void
 foo (int x)
 {
   __builtin_unwind_init ();
diff --git a/gcc/testsuite/gcc.target/mips/call-saved-5.c b/gcc/testsuite/gcc.target/mips/call-saved-5.c
index 2937b31..152b28f 100644
--- a/gcc/testsuite/gcc.target/mips/call-saved-5.c
+++ b/gcc/testsuite/gcc.target/mips/call-saved-5.c
@@ -3,7 +3,7 @@
 
 void bar (void);
 
-void
+NOCOMPRESSION void
 foo (int x)
 {
   __builtin_unwind_init ();
diff --git a/gcc/testsuite/gcc.target/mips/call-saved-6.c b/gcc/testsuite/gcc.target/mips/call-saved-6.c
index 0d1a4c8..a384d4a 100644
--- a/gcc/testsuite/gcc.target/mips/call-saved-6.c
+++ b/gcc/testsuite/gcc.target/mips/call-saved-6.c
@@ -3,7 +3,7 @@
 
 void bar (void);
 
-void
+NOCOMPRESSION void
 foo (int x)
 {
   __builtin_unwind_init ();
diff --git a/gcc/testsuite/gcc.target/mips/call-saved-7.c b/gcc/testsuite/gcc.target/mips/call-saved-7.c
new file mode 100644
index 0000000..2ebc2f1
--- /dev/null
+++ b/gcc/testsuite/gcc.target/mips/call-saved-7.c
@@ -0,0 +1,25 @@
+/* Check that we save the correct call-saved GPRs and FPRs.  */
+/* { dg-options "(HAS_LDC) -mmicromips -mabi=32 -mfp32" } */
+
+void bar (void);
+
+void
+foo (int x)
+{
+  __builtin_unwind_init ();
+  __builtin_eh_return (x, bar);
+}
+/* { dg-final { scan-assembler "\\\$16-\\\$23" } } */
+/* { dg-final { scan-assembler "\\\$(30|fp)" } } */
+/* { dg-final { scan-assembler "\\\$f20" } } */
+/* { dg-final { scan-assembler "\\\$f22" } } */
+/* { dg-final { scan-assembler "\\\$f24" } } */
+/* { dg-final { scan-assembler "\\\$f26" } } */
+/* { dg-final { scan-assembler "\\\$f28" } } */
+/* { dg-final { scan-assembler "\\\$f30" } } */
+/* { dg-final { scan-assembler-not "\\\$f21" } } */
+/* { dg-final { scan-assembler-not "\\\$f23" } } */
+/* { dg-final { scan-assembler-not "\\\$f25" } } */
+/* { dg-final { scan-assembler-not "\\\$f27" } } */
+/* { dg-final { scan-assembler-not "\\\$f29" } } */
+/* { dg-final { scan-assembler-not "\\\$f31" } } */
diff --git a/gcc/testsuite/gcc.target/mips/call-saved-8.c b/gcc/testsuite/gcc.target/mips/call-saved-8.c
new file mode 100644
index 0000000..4e8f8d7
--- /dev/null
+++ b/gcc/testsuite/gcc.target/mips/call-saved-8.c
@@ -0,0 +1,25 @@
+/* Check that we save the correct call-saved GPRs and FPRs.  */
+/* { dg-options "-mmicromips -mabi=32 -mfpxx" } */
+
+void bar (void);
+
+void
+foo (int x)
+{
+  __builtin_unwind_init ();
+  __builtin_eh_return (x, bar);
+}
+/* { dg-final { scan-assembler "\\\$16-\\\$23" } } */
+/* { dg-final { scan-assembler "\\\$(30|fp)" } } */
+/* { dg-final { scan-assembler "\\\$f20" } } */
+/* { dg-final { scan-assembler "\\\$f22" } } */
+/* { dg-final { scan-assembler "\\\$f24" } } */
+/* { dg-final { scan-assembler "\\\$f26" } } */
+/* { dg-final { scan-assembler "\\\$f28" } } */
+/* { dg-final { scan-assembler "\\\$f30" } } */
+/* { dg-final { scan-assembler-not "\\\$f21" } } */
+/* { dg-final { scan-assembler-not "\\\$f23" } } */
+/* { dg-final { scan-assembler-not "\\\$f25" } } */
+/* { dg-final { scan-assembler-not "\\\$f27" } } */
+/* { dg-final { scan-assembler-not "\\\$f29" } } */
+/* { dg-final { scan-assembler-not "\\\$f31" } } */
diff --git a/gcc/testsuite/gcc.target/mips/call-saved-9.c b/gcc/testsuite/gcc.target/mips/call-saved-9.c
new file mode 100644
index 0000000..91ebc0b
--- /dev/null
+++ b/gcc/testsuite/gcc.target/mips/call-saved-9.c
@@ -0,0 +1,25 @@
+/* Check that we save the correct call-saved GPRs and FPRs.  */
+/* { dg-options "-mmicromips -mabi=32 -mfp64" } */
+
+void bar (void);
+
+void
+foo (int x)
+{
+  __builtin_unwind_init ();
+  __builtin_eh_return (x, bar);
+}
+/* { dg-final { scan-assembler "\\\$16-\\\$23" } } */
+/* { dg-final { scan-assembler "\\\$(30|fp)" } } */
+/* { dg-final { scan-assembler "\\\$f20" } } */
+/* { dg-final { scan-assembler "\\\$f22" } } */
+/* { dg-final { scan-assembler "\\\$f24" } } */
+/* { dg-final { scan-assembler "\\\$f26" } } */
+/* { dg-final { scan-assembler "\\\$f28" } } */
+/* { dg-final { scan-assembler "\\\$f30" } } */
+/* { dg-final { scan-assembler-not "\\\$f21" } } */
+/* { dg-final { scan-assembler-not "\\\$f23" } } */
+/* { dg-final { scan-assembler-not "\\\$f25" } } */
+/* { dg-final { scan-assembler-not "\\\$f27" } } */
+/* { dg-final { scan-assembler-not "\\\$f29" } } */
+/* { dg-final { scan-assembler-not "\\\$f31" } } */
-- 
2.2.1


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