FSF GCC merge 02/23/03
[official-gcc.git] / gcc / testsuite / gcc.dg / altivec-2.c
blob3c74d392a3ebe2a1896c3ade37f7773358d3cea3
1 /* { dg-do compile { target powerpc-*-* } } */
2 /* { dg-options "-maltivec" } */
4 /* Program to test the vector_size attribute. This needs to run on a
5 target that has vectors, so use AltiVec. */
7 #define vector __attribute__((vector_size(16)))
9 vector int foobar;
11 /* Only floats and integrals allowed. We don't care if they map to SIs. */
12 struct X { int frances; };
13 vector struct X hotdog; /* { dg-error "invalid vector type" } */
15 /* Arrays of vectors. */
16 vector char b[10], ouch;
18 /* Pointers of vectors. */
19 vector short *shoe, polish;
21 int xxx[sizeof(foobar) == 16 ? 69 : -1];
23 int nc17[sizeof(shoe) == sizeof (char *) ? 69 : -1];
25 code ()
27 *shoe = polish;
28 b[1] = ouch;
31 vector short
32 hoop ()
34 return polish;