Handle peeling for alignment with masking
[official-gcc.git] / gcc / testsuite / gcc.target / aarch64 / sve / miniloop_1.c
blob09eb4146816cc51af5829f15b6c287aca086c382
1 /* { dg-do assemble { target aarch64_asm_sve_ok } } */
2 /* { dg-options "-O2 -ftree-vectorize --save-temps" } */
4 void loop (int * __restrict__ a, int * __restrict__ b, int * __restrict__ c,
5 int * __restrict__ d, int * __restrict__ e, int * __restrict__ f,
6 int * __restrict__ g, int * __restrict__ h)
8 int i = 0;
9 for (i = 0; i < 3; i++)
11 a[i] += i;
12 b[i] += i;
13 c[i] += i;
14 d[i] += i;
15 e[i] += i;
16 f[i] += a[i] + 7;
17 g[i] += b[i] - 3;
18 h[i] += c[i] + 3;
22 /* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, } 8 } } */
23 /* { dg-final { scan-assembler-times {\tst1w\tz[0-9]+\.s, } 8 } } */