On Mon, 12 May 2014, Evgeny Stupachenko wrote: > The test is on general changes. However I was able to test it on x86 only. > I see 2 possible solutions: > 1. Set the test for x86 only. > 2. Modify it so that it will pass on sparc-sun-solaris2. > > If 2. is not acceptable I'll create patch for 1. > Currently I don't see why "in0_9 = *in_27" is not supported. Does the > test fail because of unsupported permutation?
The test uses /* { dg-options "-O2 -g -ftree-vectorize -mssse3 -fdump-tree-vect-details" { target { i?86-*-* x86_64-*-* } } } */ that's bogus. You shouldn't add any dg-options. Instead use proper dg-effective-target checks for the mssse3 feature you are using. Note that the dg-final checking is applied regardless of the options above are applied or not. Why does the test only succeed with -mssse3 btw? The proper way to restrict the test to a single target is to use /* { dg-skip-if "why" { ! { x86_64-*-* i?86-*-* } } } */ Sorry for not catching this in the review. Richard. > > On Mon, May 12, 2014 at 7:14 PM, Rainer Orth > <r...@cebitec.uni-bielefeld.de> wrote: > > Evgeny Stupachenko <evstu...@gmail.com> writes: > > > >> Patch with fixes attached. > >> Currently if-structure is as following: > >> + if (count == 3) > >> ... > >> + else > >> + { > >> + /* If length is not equal to 3 then only power of 2 is > >> supported. */ > >> + gcc_assert (exact_log2 (count) != -1); > >> > >> For stores group I've created another mail thread. > > [...] > >>>> 2014-05-06 Evgeny Stupachenko <evstu...@gmail.com> > >>>> > >>>> PR tree-optimization/52252 > >>>> * gcc.dg/vect/pr52252-ld.c: Test on loads group of size 3. > > > > This test FAILs on sparc-sun-solaris2.11, both 32 and 64-bit: > > > > FAIL: gcc.dg/vect/pr52252-ld.c scan-tree-dump-times vect "vectorized 1 > > loops" 1 > > FAIL: gcc.dg/vect/pr52252-ld.c -flto -ffat-lto-objects > > scan-tree-dump-times vect "vectorized 1 loops" 1 > > > > The dumps have > > > > /vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.dg/vect/pr52252-ld.c:10:3: > > note: not vectorized: relevant stmt not supported: in0_9 = *in_27; > > /vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.dg/vect/pr52252-ld.c:7:1: > > note: vectorized 0 loops in function. > > > > Rainer > > > > -- > > ----------------------------------------------------------------------------- > > Rainer Orth, Center for Biotechnology, Bielefeld University > > -- Richard Biener <rguent...@suse.de> SUSE / SUSE Labs SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746 GF: Jeff Hawn, Jennifer Guild, Felix Imend"orffer