1  /* { dg-do compile } */
       2  /* { dg-additional-options "-mavx2" { target x86_64-*-* i?86-*-* } } */
       3  
       4  short c;
       5  int d;
       6  int fn1(int p1, int p2) {
       7      int a, b;
       8      a = p1 >> 3 & p2;
       9      b = p1 & 072;
      10      a |= a >> 5;
      11      a |= b >> 5;
      12      return a;
      13  }
      14  void fn2() {
      15      short *e = &c;
      16      int *f;
      17      int g;
      18      while (d -= 4) {
      19  	fn1(1, 1);
      20  	fn1(1, 1) * fn1(1, 1) * fn1(1, 1);
      21  	*e++ = fn1(*f++, g);
      22  	*e++ = fn1(*f++, g);
      23      }
      24  }