(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
i386/
pr69891.c
       1  /* PR rtl-optimization/69891 */
       2  /* { dg-do run } */
       3  /* { dg-options "-O -fno-tree-fre -mstringop-strategy=libcall -Wno-psabi" } */
       4  /* { dg-additional-options "-mno-sse" { target ia32 } } */
       5  
       6  typedef unsigned short A;
       7  typedef unsigned short B __attribute__ ((vector_size (32)));
       8  typedef unsigned int C;
       9  typedef unsigned int D __attribute__ ((vector_size (32)));
      10  typedef unsigned long long E;
      11  typedef unsigned long long F __attribute__ ((vector_size (32)));
      12  
      13  __attribute__((noinline, noclone)) unsigned
      14  foo(D a, B b, D c, F d)
      15  {
      16    b /= (B) {1, -c[0]} | 1;
      17    c[0] |= 7;
      18    a %= c | 1;
      19    c ^= c;
      20    return a[0] + b[15] + c[0] + d[3];
      21  }
      22  
      23  int
      24  main ()
      25  {
      26    unsigned x = foo ((D) {}, (B) {}, (D) {}, (F) {});
      27    if (x != 0)
      28      __builtin_abort ();
      29    return 0;
      30  }