diff mbox

MIPS: Prevent the p5600-bonding.c test from being run for the n32 and 64 ABIs

Message ID 0DA23CC379F5F945ACB41CF394B98277210FA58F@LEMAIL01.le.imgtec.org
State New
Headers show

Commit Message

Andrew Bennett July 22, 2015, 2:13 p.m. UTC
Hi,

The MIPS p5600-bonding.c test is currently failing for the n32 and n64 
ABIs.  The test is checking if the load/store bonding patterns correctly 
match sequences of load/store instructions.  There are currently no load/store 
bonding patterns to match DI mode values.  For the n32 and n64 ABIs the code 
generated for the testcase produces DI mode load and stores; which means the 
load/store bonding patterns are not matched and the test fails.	

To fix this issue I have added a dg-skip-if option to the test to prevent it
from being run for the n32 and n64 ABIs.  When support for load/store bonding
for DI mode values has been added this can be removed.

The patch has been tested on the mti/img elf/linux-gnu toolchains, and
there have been no new regressions.

The patch and ChangeLog are below.

Ok to commit?


Many thanks,



Andrew


testsuite/
	gcc.target/mips/p5600-bonding.c (dg-skip-if): Don't run the test for the 
	n32 or n64 ABIs.

Comments

Matthew Fortune July 22, 2015, 2:21 p.m. UTC | #1
Andrew Bennett <Andrew.Bennett@imgtec.com> writes:
> diff --git a/gcc/testsuite/gcc.target/mips/p5600-bonding.c
> b/gcc/testsuite/gcc.target/mips/p5600-bonding.c
> index 0890ffa..20c26ca 100644
> --- a/gcc/testsuite/gcc.target/mips/p5600-bonding.c
> +++ b/gcc/testsuite/gcc.target/mips/p5600-bonding.c
> @@ -1,6 +1,7 @@
>  /* { dg-do compile } */
>  /* { dg-options "-dp -mtune=p5600  -mno-micromips -mno-mips16" } */
>  /* { dg-skip-if "Bonding needs peephole optimization." { *-*-* } { "-O0" "-O1" } { "" } }
> */
> +/* { dg-skip-if "There is no DI mode support for load/store bonding" { *-*-* } { "-
> mabi=n32" "-mabi=64" } { "" } } */
>  typedef int VINT32 __attribute__ ((vector_size((16))));

If the best fix we can do for this test is to limit what it tests then we
should still not just skip it. There is some precedence for tests that
require a specific arch with the isa=loongson special case. I'd rather
just lock the test down to p5600 as per the filename.

Thanks,
Matthew
diff mbox

Patch

diff --git a/gcc/testsuite/gcc.target/mips/p5600-bonding.c b/gcc/testsuite/gcc.target/mips/p5600-bonding.c
index 0890ffa..20c26ca 100644
--- a/gcc/testsuite/gcc.target/mips/p5600-bonding.c
+++ b/gcc/testsuite/gcc.target/mips/p5600-bonding.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-dp -mtune=p5600  -mno-micromips -mno-mips16" } */
 /* { dg-skip-if "Bonding needs peephole optimization." { *-*-* } { "-O0" "-O1" } { "" } } */
+/* { dg-skip-if "There is no DI mode support for load/store bonding" { *-*-* } { "-mabi=n32" "-mabi=64" } { "" } } */
 typedef int VINT32 __attribute__ ((vector_size((16))));
 
 void