/* { dg-do compile } */ /* { dg-options "-O1 -fdump-tree-optimized -w" } */ /* { dg-options "-O1 -fdump-tree-optimized -w -msse" { target { i?86-*-* x86_64-*-* } } } */ /* Check that SRA replaces structures containing vectors. */ #define vector __attribute__((vector_size(16))) struct vt { vector int t; }; vector int f(vector int t1, vector int t2) { struct vt st1, st2, st3; st1.t = t1; st2 = st1; st2.t += t2; st3 = st2; return st3.t; } /* { dg-final { scan-tree-dump-times "st" 0 "optimized" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */