(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
arm/
simd/
pr100757-2.c
       1  /* { dg-do compile } */
       2  /* { dg-require-effective-target arm_v8_1m_mve_fp_ok } */
       3  /* { dg-add-options arm_v8_1m_mve_fp } */
       4  /* { dg-additional-options "-O3 -funsafe-math-optimizations" } */
       5  /* Derived from gcc.c-torture/compile/20160205-1.c.  */
       6  
       7  float a[32];
       8  int fn1(int d) {
       9    int c = 4;
      10    for (int b = 0; b < 32; b++)
      11      if (a[b] != 2.0f)
      12        c = 5;
      13    return c;
      14  }
      15  
      16  /* { dg-final { scan-assembler-times {\tvmov\.f32\tq[0-7], #2\.0e\+0  @ v4sf} 1 } } */
      17  /* { dg-final { scan-assembler-not {\t.word\t1073741824\n} } } */
      18  /* { dg-final { scan-assembler-times {\tvmov\.i32\tq[0-7], #0x4  @ v4si} 1 } } */
      19  /* { dg-final { scan-assembler-not {\t.word\t4\n} } } */
      20  /* { dg-final { scan-assembler-times {\tvmov\.i32\tq[0-7], #0x5  @ v4si} 1 } } */
      21  /* { dg-final { scan-assembler-not {\t.word\t5\n} } } */
      22  /* { dg-final { scan-assembler-not {\t.word\t1\n} } } */ /* 'true' mask.  */
      23  /* { dg-final { scan-assembler-not {\t.word\t0\n} } } */ /* 'false' mask.  */