(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
pr62178.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O3" } */
       3  
       4  #pragma GCC target "+nosve"
       5  
       6  int a[30 +1][30 +1], b[30 +1][30 +1], r[30 +1][30 +1];
       7  
       8  void foo (void) {
       9    int i, j, k;
      10  
      11    for ( i = 1; i <= 30; i++ )
      12      for ( j = 1; j <= 30; j++ ) {
      13        r[i][j] = 0;
      14        for(k = 1; k <= 30; k++ )
      15          r[i][j] += a[i][k]*b[k][j];
      16      }
      17  }
      18  
      19  /* { dg-final { scan-assembler "ldr\\tq\[0-9\]+, \\\[x\[0-9\]+\\\], \[0-9\]+" } } */
      20  /* { dg-final { scan-assembler "mla\\tv\[0-9\]+\.4s, v\[0-9\]+\.4s, v\[0-9\]+" } } */
      21  /* { dg-final { scan-assembler-not {dup} } } */
      22  /* { dg-final { scan-assembler-not {fmov} } } */