1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -ftree-vectorize -fopenmp-simd -msve-vector-bits=512 -fno-tree-loop-distribute-patterns" } */ 3 4 #define N 64 5 #include "single_1.c" 6 7 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.b, #1\n} 1 } } */ 8 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.b, #2\n} 1 } } */ 9 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.h, #3\n} 1 } } */ 10 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.h, #4\n} 1 } } */ 11 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.s, #5\n} 1 } } */ 12 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.s, #6\n} 1 } } */ 13 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.d, #7\n} 1 } } */ 14 /* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.d, #8\n} 1 } } */ 15 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.h, #1\.0e\+0\n} 1 } } */ 16 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.s, #2\.0e\+0\n} 1 } } */ 17 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.d, #3\.0e\+0\n} 1 } } */ 18 19 /* { dg-final { scan-assembler-times {\tptrue\tp[0-7]\.b, vl64\n} 11 } } */ 20 21 /* { dg-final { scan-assembler-times {\tst1b\tz[0-9]+\.b,} 2 } } */ 22 /* { dg-final { scan-assembler-times {\tst1h\tz[0-9]+\.h,} 3 } } */ 23 /* { dg-final { scan-assembler-times {\tst1w\tz[0-9]+\.s,} 3 } } */ 24 /* { dg-final { scan-assembler-times {\tst1d\tz[0-9]+\.d,} 3 } } */ 25 26 /* { dg-final { scan-assembler-not {\twhile} } } */ 27 /* { dg-final { scan-assembler-not {\tb} } } */ 28 /* { dg-final { scan-assembler-not {\tcmp} } } */ 29 /* { dg-final { scan-assembler-not {\tindex} } } */ 30