The problem is that when vect_multiple_sizes is true, then no correct number exist (at least, theoretically). That's because number of diagnostic messages depends on number of available vector sizes - for now this number is usually 2 (on x86 it's 256 and 128 bit vectors), so we could change 'xfail' to 'target'. But when wider vectors become available (512 bit), there will be fails again.
On 12 December 2011 11:46, Jakub Jelinek <ja...@redhat.com> wrote: > On Mon, Dec 12, 2011 at 11:06:37AM +0400, Michael Zolotukhin wrote: > diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c > b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c > index 21b87a3..f75253e 100644 > --- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c > +++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c > @@ -88,5 +88,6 @@ int main (void) > > /* { dg-final { scan-tree-dump-times "vectorized 4 loops" 1 "vect" } } */ > /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 0 > "vect" } } */ > -/* { dg-final { scan-tree-dump-times "Alignment of access forced using > peeling" 2 "vect" } } */ > +/* { dg-final { scan-tree-dump-times "Alignment of access forced using > peeling" 2 "vect" { target {! vect_multiple_sizes} } } } */ > +/* { dg-final { scan-tree-dump-times "Alignment of access forced using > peeling" 2 "vect" { xfail vect_multiple_sizes} } } */ > /* { dg-final { cleanup-tree-dump "vect" } } */ > > The xfails are IMHO undesriable, then you just stop testing those tests on > very common developer platforms. > IMHO you should just use different dump-times count for the > vect_multipl_sizes (after checking it is the right count), if it doesn't > depend on -mprefer-avx128 vs. -mno-prefer-avx128. If it does, > then perhaps we want a predicate that details the vectorization factors > and their order. > > Jakub -- --- Best regards, Michael V. Zolotukhin, Software Engineer Intel Corporation.