1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -fdump-tree-vrp1" } */ 3 4 void fail(void) __attribute__((noreturn)); 5 int bar(int); 6 foo(int x)7int foo(int x) { 8 int i; 9 int s = 0; 10 11 if (x <= 0) fail(); 12 for (i = 0; i < x; ++i) { 13 /* This division by 4 should be replaced with >> 2. */ 14 s += bar(i/4); 15 } 16 return s; 17 } 18 19 /* { dg-final { scan-tree-dump-times " = i_.* >> 2" 1 "vrp1" } } */ 20