(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
vect/
bb-slp-57.c
       1  /* { dg-do compile } */
       2  /* { dg-additional-options "-ffast-math" } */
       3  /* { dg-require-effective-target vect_float } */
       4  
       5  float *a;
       6  typedef struct {
       7    int c;
       8    float bbmax[3];
       9  } d;
      10  d e;
      11  int f[3];
      12  int g, h, i, j;
      13  float k, k;
      14  void l()
      15  {
      16    for (unsigned z = 0; z < 2048; ++z) {
      17      {
      18        j = e.bbmax[1] > k ? e.bbmax[1] : k;
      19      }
      20      e.bbmax[1] = j;
      21      { i = e.bbmax[2] > k ? e.bbmax[2] : k; }
      22      e.bbmax[2] = i;
      23      f[2] = a[2];
      24      {
      25        float b;
      26        h = e.bbmax[1] > b ? e.bbmax[1] : b;
      27      }
      28      e.bbmax[1] = h;
      29      {
      30        float b;
      31        g = e.bbmax[2] > b ? e.bbmax[2] : b;
      32      }
      33      e.bbmax[2] = g;
      34    }
      35  }
      36  
      37  /* { dg-final { scan-tree-dump-times "transform load" 1 "slp1" { target { { x86_64-*-* i?86-*-* } && lp64 } } } } */
      38  /* { dg-final { scan-tree-dump "optimized: basic block" "slp1" { target { { x86_64-*-* i?86-*-* } && lp64 } } } } */