From: Richard Sandiford Date: Thu, 21 Nov 2019 17:43:24 +0000 (+0000) Subject: Add more markup to vect-alias-check-{1,18}.c (PR 92543) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=91f161b03b649984991573c2f2605555da4a678c;p=gcc.git Add more markup to vect-alias-check-{1,18}.c (PR 92543) In vect-alias-check-1.c we unroll the inner loop and then vectorise the stores at a[c + 1][b]. Since the access has no guaranteed alignemnt, we need a realignment mechanism or support for unaligned accesses in order to vectorise. In vect-alias-check-18.c we use a reverse access and so need permute support in order to vectorise. I'm not really sure when this part of the testsuite prefers { xfail { ! foo } } and when it prefers { target foo }. xfail seems like the most common choice for the alignment restriction, whereas vect_int and vect_perm are mostly dg-require-effective-target style features, so I went with that combination. 2019-11-21 Richard Sandiford gcc/testsuite/ PR testsuite/92543 * gcc.dg/vect/vect-alias-check-1.c: XFAIL the alias check message if there is no realignment support and no support for unaligned accesses. * gcc.dg/vect/vect-alias-check-18.c: Restrict the test for the alias message to targets that have permute support. From-SVN: r278591 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1f69d52fd1e..0250eebb312 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2019-11-21 Richard Sandiford + + PR testsuite/92543 + * gcc.dg/vect/vect-alias-check-1.c: XFAIL the alias check message + if there is no realignment support and no support for unaligned + accesses. + * gcc.dg/vect/vect-alias-check-18.c: Restrict the test for the + alias message to targets that have permute support. + 2019-11-21 Richard Sandiford PR tree-optimization/92595 diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c index 3887120b747..6a2cef1586f 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c +++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c @@ -15,5 +15,5 @@ fn1 () } /* { dg-final { scan-tree-dump "improved number of alias checks from \[0-9\]* to 1" "vect" } } */ -/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" { xfail { vect_no_align && { ! vect_hw_misalign } } } } } */ /* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c index 9d0739151d9..b9f5d2bbc9f 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c +++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c @@ -60,5 +60,5 @@ main (void) } /* { dg-final { scan-tree-dump {flags: *WAR\n} "vect" { target vect_int } } } */ -/* { dg-final { scan-tree-dump "using an index-based WAR/WAW test" "vect" } } */ +/* { dg-final { scan-tree-dump "using an index-based WAR/WAW test" "vect" { target { vect_int && vect_perm } } } } */ /* { dg-final { scan-tree-dump-not "using an address-based" "vect" } } */