(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
vector-subscript-4.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fdump-tree-optimized -w -Wno-psabi" } */
       3  
       4  #define foobar(n) \
       5      typedef int v##n##si __attribute__ ((vector_size (4 * n))); \
       6  \
       7  int \
       8  foo##n(int x, v##n##si v) \
       9  { \
      10    v[0] ^= v[1]; \
      11    return ((v##n##si)v)[x]; \
      12  } \
      13  \
      14  int \
      15  bar##n(int x, v##n##si v) \
      16  { \
      17    v[0] ^= v[1]; \
      18    return v[x]; \
      19  }
      20  
      21  foobar(2)
      22  foobar(4)
      23  foobar(8)
      24  foobar(16)
      25  foobar(32)
      26  foobar(64)
      27  
      28  /* Verify we don't have any vector temporaries in the IL.  */
      29  /* { dg-final { scan-tree-dump-not "vector" "optimized" } } */