1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3
4 typedef float __attribute__((vector_size(8))) vec;
5
6 void
7 store_adjusted(vec *out, vec x, vec y)
8 {
9 out[400] = x;
10 out[401] = y;
11 out[402] = y;
12 out[403] = x;
13 }
14
15 /* { dg-final { scan-assembler {add\tx[0-9]+, x[0-9]+, 3200} } } */
16 /* { dg-final { scan-assembler {stp\td[0-9]+, d[0-9]+, \[x[0-9]+\]} } } */
17 /* { dg-final { scan-assembler {stp\td[0-9]+, d[0-9]+, \[x[0-9]+, 16\]} } } */
18 /* { dg-final { scan-assembler-not "str\t" } } */