Tighten condition in vect/pr85586.c (PR 85654)
[official-gcc.git] / gcc / testsuite / gcc.dg / pr63594-1.c
blobb8cd201fd0e2cb7116a50c3547bbbcdb992dc28a
1 /* PR target/63594 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -Wno-psabi" } */
4 /* { dg-additional-options "-mno-mmx" { target i?86-*-* x86_64-*-* } } */
5 /* { dg-prune-output "non-standard ABI extension" } */
7 #define C1 c
8 #define C2 C1, C1
9 #define C4 C2, C2
10 #define C8 C4, C4
11 #define C16 C8, C8
12 #define C32 C16, C16
13 #define C64 C32, C32
14 #define C_(n) n
15 #define C(n) C_(C##n)
17 #define T(t,s) \
18 typedef t v##t##s __attribute__ ((__vector_size__ (s * sizeof (t)))); \
19 v##t##s \
20 test1##t##s (t c) \
21 { \
22 v##t##s v = { C(s) }; \
23 return v; \
24 } \
26 v##t##s \
27 test2##t##s (t *p) \
28 { \
29 t c = *p; \
30 v##t##s v = { C(s) }; \
31 return v; \
34 typedef long long llong;
36 T(char, 64)
37 T(char, 32)
38 T(char, 16)
39 T(char, 8)
40 T(char, 4)
41 T(char, 2)
42 T(char, 1)
43 T(short, 32)
44 T(short, 16)
45 T(short, 8)
46 T(short, 4)
47 T(short, 2)
48 T(short, 1)
49 T(int, 16)
50 T(int, 8)
51 T(int, 4)
52 T(int, 2)
53 T(int, 1)
54 T(float, 16)
55 T(float, 8)
56 T(float, 4)
57 T(float, 2)
58 T(float, 1)
59 T(llong, 8)
60 T(llong, 4)
61 T(llong, 2)
62 T(llong, 1)
63 T(double, 8)
64 T(double, 4)
65 T(double, 2)
66 T(double, 1)