1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 
4 #include <arm_sve.h>
5 
6 void
test1(int32_t x,int32_t y,int * any,svbool_t * ptr)7 test1 (int32_t x, int32_t y, int *any, svbool_t *ptr)
8 {
9   svbool_t res = svwhilele_b8 (x, y);
10   *any = svptest_last (svptrue_b8 (), res);
11   *ptr = res;
12 }
13 
14 int
test2(int32_t x,int32_t y)15 test2 (int32_t x, int32_t y)
16 {
17   svbool_t res = svwhilele_b8 (x, y);
18   return svptest_last (svptrue_b8 (), res);
19 }
20 
21 /* { dg-final { scan-assembler-times {\twhilele\t} 2 } } */
22 /* { dg-final { scan-assembler-not {\tptrue\t} } } */
23 /* { dg-final { scan-assembler-not {\tptest\t} } } */
24