1 /* PR tree-optimization/54713 */
2
3 #ifndef N
4 #define N 8
5 #define ONE 1, 1, 1, 1, 1, 1, 1, 1
6 #define ONEU 1U, 1U, 1U, 1U, 1U, 1U, 1U, 1U
7 #endif
8
9 typedef int V __attribute__((vector_size (N * sizeof (int))));
10 typedef unsigned int W __attribute__((vector_size (N * sizeof (int))));
11
12 void
f1(V * p)13 f1 (V *p)
14 {
15 *p = (*p & ((V) { ONE })) ^ ((V) { ONE});
16 }
17
18 void
f2(V * p)19 f2 (V *p)
20 {
21 *p = (*p ^ ((V) { ONE })) & ((V) { ONE});
22 }
23
24 void
f3(V * p)25 f3 (V *p)
26 {
27 *p = (~*p) & ((V) { ONE });
28 }
29
30 void
f4(V * p,V * q)31 f4 (V *p, V *q)
32 {
33 *p = (*p ^ *q) == *q;
34 }
35
36 void
f5(V * p,V * q)37 f5 (V *p, V *q)
38 {
39 *p = (*p ^ *q) == *p;
40 }
41
42 void
f6(V * p,V * q,V * r)43 f6 (V *p, V *q, V *r)
44 {
45 *p = (*p & *r) == (*q & *r);
46 }
47
48 void
f7(V * p,V * q,V * r)49 f7 (V *p, V *q, V *r)
50 {
51 *p = (*p & *r) == (*r & *q);
52 }
53
54 void
f8(V * p,V * q,V * r)55 f8 (V *p, V *q, V *r)
56 {
57 *p = (*r & *p) == (*q & *r);
58 }
59
60 void
f9(V * p,V * q,V * r)61 f9 (V *p, V *q, V *r)
62 {
63 *p = (*r & *p) == (*r & *q);
64 }
65
66 void
f10(W * p,W * q)67 f10 (W *p, W *q)
68 {
69 *p = *p < (((const W) { ONEU }) << *q);
70 }
71