1 /* PR c/52577 */
2 /* { dg-do compile } */
3 /* { dg-options "-Wunused" } */
4 
5 typedef int V __attribute__((vector_size (sizeof (int) * 4)));
6 
7 void
f1(V * p)8 f1 (V *p)
9 {
10   V mask = { 1, 2, 3, 0 };
11   *p = __builtin_shuffle (*p, mask);
12 }
13 
14 void
f2(V * p,V * q)15 f2 (V *p, V *q)
16 {
17   V mask = { 1, 2, 3, 0 };
18   *p = __builtin_shuffle (*p, *q, mask);
19 }
20 
21 void
f3(V * p,V * mask)22 f3 (V *p, V *mask)
23 {
24   V a = { 1, 2, 3, 0 };
25   *p = __builtin_shuffle (a, *mask);
26 }
27 
28 void
f4(V * p,V * mask)29 f4 (V *p, V *mask)
30 {
31   V a = { 1, 2, 3, 0 };
32   V b = { 2, 3, 4, 1 };
33   *p = __builtin_shuffle (a, b, *mask);
34 }
35