This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.
- From: Evgeny Stupachenko <evstupac at gmail dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Rainer Orth <ro at cebitec dot uni-bielefeld dot de>, Richard Biener <rguenther at suse dot de>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Uros Bizjak <ubizjak at gmail dot com>
- Date: Wed, 28 May 2014 14:51:57 +0400
- Subject: Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.
- Authentication-results: sourceware.org; auth=none
- References: <CAOvf_xwFX6dG9ypKBYGyF18MBKapdoOEPstk1xxrFc9KXGvVKw at mail dot gmail dot com> <CAOvf_xxQjF3GmsupiRkWfmQSv_Xxu8qrTPyqJZFmp5qeY3f9gQ at mail dot gmail dot com> <CAOvf_xyFZMQusRaXp1FP-MTVKbeMZfm-8EzOgMQvEdOhBwUHaA at mail dot gmail dot com> <alpine dot LSU dot 2 dot 11 dot 1405061342150 dot 18709 at zhemvz dot fhfr dot qr> <CAOvf_xwC9kHmvQ0a3cq=+hWo4q41aZJGFwxQ2Ye3BAZ2B0vd8w at mail dot gmail dot com> <yddzjinjah0 dot fsf at lokon dot CeBiTec dot Uni-Bielefeld dot DE> <CAOvf_xz_45u6NYPVTrWzBeSYwsm6=VE=U19tw0ZmvWOeOKKZ+w at mail dot gmail dot com> <alpine dot LSU dot 2 dot 11 dot 1405131018060 dot 18709 at zhemvz dot fhfr dot qr> <CAOvf_xx0dcnzBP89sGgGeKZe8=xBFnmy1C-jJTd7COKRVDC0tQ at mail dot gmail dot com> <ydda9ahrhqu dot fsf at lokon dot CeBiTec dot Uni-Bielefeld dot DE> <20140516132154 dot GA10386 at tucnak dot redhat dot com>
Does the following fix ok?
2014-05-28 Evgeny Stupachenko <evstupac@gmail.com>
* gcc.dg/vect/pr52252-ld.c: Fix target and options for the test.
diff --git a/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
b/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
index 6e3cb52..57e8468 100644
--- a/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
+++ b/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
@@ -1,6 +1,6 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -g -ftree-vectorize -mssse3
-fdump-tree-vect-details" { target { i?86-*-* x86_64-*
-
+/* { dg-options "-O2 -g -ftree-vectorize -fdump-tree-vect-details" } */
+/* { dg-additional-options "-mssse3" { target { i?86-*-* x86_64-*-* } } } */
#define byte unsigned char
void
@@ -26,5 +26,5 @@ matrix_mul (byte *in, byte *out, int size)
}
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" {
target { i?86-*-* x86_64-*-* } } }
/* { dg-final { cleanup-tree-dump "vect" } } */
On Fri, May 16, 2014 at 5:21 PM, Jakub Jelinek <jakub@redhat.com> wrote:
> On Fri, May 16, 2014 at 03:11:05PM +0200, Rainer Orth wrote:
>> Hi Evgeny,
>>
>> > Does the following fix ok?
>> >
>> > 2014-05-16 Evgeny Stupachenko <evstupac@gmail.com>
>> >
>> > * gcc.dg/vect/pr52252-ld.c: Fix target for the test.
>> >
>> >
>> > diff --git a/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
>> > b/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
>> > index 6e3cb52..301433b 100644
>> > --- a/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
>> > +++ b/gcc/testsuite/gcc.dg/vect/pr52252-ld.c
>> > @@ -1,5 +1,6 @@
>> > /* { dg-do compile } */
>> > -/* { dg-options "-O2 -g -ftree-vectorize -mssse3
>> > -fdump-tree-vect-details" { target { i?86-*-* x86_64-*-* } } } */
>> > +/* { dg-options "-O2 -g -ftree-vectorize -mssse3 -fdump-tree-vect-details" } */
>> > +/* { dg-skip-if "why" { ! { x86_64-*-* i?86-*-* } } } */
>>
>> If the test is really x86 specific, move it to gcc.target/i386 and
>> remove the dg-skip-if. Otherwise, add an explanation for skipping the
>> test on other targets to the first arg of dg-skip-if. This is supposed
>> to be a comment stating why the test is skipped, not "why" literally.
>
> Well, I don't see anything i?86/x86_64 specific on the test. What
> is specific is the -mssse3, which supposedly should be added through
> /* { dg-additional-options "-mssse3" { target { i?86-*-* x86_64-*-* } } } */
> and then perhaps the test might not necessarily be vectorized (so the
> dg-final line may need target guard as well.
> But, I see no reason not to try to compile this on other targets.
>
> Jakub