On Tue, 4 Oct 2016, Uros Bizjak wrote:

> Hello!
> 
> > Andreas noticed I forgot to check if the target can fix/float a vector.
> >
> > Bootstrap / regtest pending on x86_64-unknown-linux-gnu.  Verified
> > the fix with a cross to ia64-linux.
> >
> > Richard.
> >
> > 2016-10-04  Richard Biener  <rguent...@suse.de>
> >
> > PR tree-optimization/77399
> > * tree-ssa-forwprop.c (simplify_vector_constructor): Properly
> > verify the target can convert.
> >
> > * gcc.dg/tree-ssa/forwprop-35.c: Adjust.
> 
> -/* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR" 1 "cddce1" } } */
> -/* { dg-final { scan-tree-dump-times "\\\(v4sf\\\) " 2 "cddce1" } } */
> +/* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR" 1 "cddce1" {
> target x86_64-*-* } } } */
> +/* { dg-final { scan-tree-dump-times "\\\(v4sf\\\) " 2 "cddce1" {
> target x86_64-*-* } } } */
> 
> x86 targets should always be in pair, so "target i?86-*-* x86_64-*-*",
> with an optional ia32 target addition when the test is valid for 32
> bit targets only, or { ! ia32 } addition when test is valid for 64-bit
> targets only.

I need SSE2 support but didn't want to adjust dg-options with another
{ target } ... so with default ISA this is valid for x86_64 only
AFAIK?  It might be ok for i?86-*-* with -m64 thus that is your
{ i?86-*-* x86_64-*-* } && { ! ia32 } then?  But x86_64-*-* -m32
is ok ...

I'll try a

/* { dg-options "-O -fdump-tree-cddce1 -msse2" { target { i?86-*-* 
x86_64-*-* } } } */

then.

Richard.

Reply via email to