(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
vect/
fast-math-vect-pr29925.c
       1  /* { dg-require-effective-target vect_float } */
       2  
       3  #include <stdlib.h>
       4  #include "tree-vect.h"
       5  
       6  __attribute__ ((noinline))
       7  void interp_pitch(float *exc, float *interp, int pitch, int len)
       8  {
       9     int i,k;
      10     int maxj;
      11  
      12     maxj=3;
      13     for (i=0;i<len;i++)
      14     {
      15        float tmp = 0;
      16  #pragma GCC unroll 0
      17        for (k=0;k<7;k++)
      18        {
      19           tmp += exc[i-pitch+k+maxj-6];
      20        }
      21        interp[i] = tmp;
      22     }
      23  }
      24  
      25  int main()
      26  {
      27     float *exc = calloc(126,sizeof(float));
      28     float *interp = calloc(80,sizeof(float));
      29     int pitch = -35;
      30  
      31     check_vect ();
      32  
      33     interp_pitch(exc, interp, pitch, 80);
      34     free(exc);
      35     free(interp);
      36     return 0;
      37  }
      38  
      39  /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
      40