[PATCH] S/390: Xfail some tests in insv-[12].c.

Dominik Vogt vogt@linux.vnet.ibm.com
Tue Jul 19 12:10:00 GMT 2016


The attached patch XFAILs some of the "insv" testcases as
discussed internally.  Tested on s390x biarch and s390.

Ciao

Dominik ^_^  ^_^

-- 

Dominik Vogt
IBM Germany
-------------- next part --------------
gcc/testsuite/ChangeLog

	* gcc.target/s390/insv-1.c: Xfail some tests.
	* gcc.target/s390/insv-2.c: Likewise.
-------------- next part --------------
>From 6cfe287811766e751c5d94834e5314e97c6ab50d Mon Sep 17 00:00:00 2001
From: Dominik Vogt <vogt@linux.vnet.ibm.com>
Date: Tue, 19 Jul 2016 10:10:23 +0100
Subject: [PATCH] S/390: Xfail some tests in insv-[12].c.

---
 gcc/testsuite/gcc.target/s390/insv-1.c |  9 ++++++++-
 gcc/testsuite/gcc.target/s390/insv-2.c | 15 ++++++++++++++-
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/gcc.target/s390/insv-1.c b/gcc/testsuite/gcc.target/s390/insv-1.c
index e6c1b8b..8d464f5 100644
--- a/gcc/testsuite/gcc.target/s390/insv-1.c
+++ b/gcc/testsuite/gcc.target/s390/insv-1.c
@@ -108,4 +108,11 @@ foo4c (unsigned long a, unsigned long b)
 #endif
 }
 
-/* { dg-final { scan-assembler-times "risbg" 6 } } */
+/* The functions foo3, foo4, foo3b, foo4b no longer use risbg but rosbg instead.
+
+   On s390x, four risbg go away and four new ones appear in other functions ...
+     { dg-final { scan-assembler-times "risbg" 6 { target { s390x-*-* } } } }
+
+   but not on s390.
+     { dg-final { scan-assembler-times "risbg" 2 { target { s390-*-* } } } }
+*/
diff --git a/gcc/testsuite/gcc.target/s390/insv-2.c b/gcc/testsuite/gcc.target/s390/insv-2.c
index 2ba6d6c..70af123 100644
--- a/gcc/testsuite/gcc.target/s390/insv-2.c
+++ b/gcc/testsuite/gcc.target/s390/insv-2.c
@@ -108,4 +108,17 @@ foo4c (unsigned long a, unsigned long b)
 #endif
 }
 
-/* { dg-final { scan-assembler-times "risbgn" 6 } } */
+/* The functions foo3, foo4, foo3b, foo4b no longer use risbgn but rosbg instead
+   which is slightly worse.  Combine prefers to use the simpler two insn
+   combinations possible with rosbg instead of the more complicated three insn
+   combinations that result in risbgn.  This problem has been introduced with
+   the commit
+
+     S/390: Add patterns for r<nox>sbg instructions.
+
+   (3rd of May, 2016).  This should be fixed some time in the future, but for
+   now just adapt the expected result:
+
+   { dg-final { scan-assembler-times "risbgn" 6 { xfail { *-*-* } } } }
+   { dg-final { scan-assembler-times "risbgn" 2 } }
+*/
-- 
2.3.0



More information about the Gcc-patches mailing list