1 /* PR tree-optimization/80558 */ 2 /* { dg-do compile } */ 3 /* { dg-options "-O2 -fdump-tree-evrp" } */ 4 /* { dg-final { scan-tree-dump-not "link_error" "evrp" } } */ 5 6 void link_error (void); 7 8 void f1(int x)9f1 (int x) 10 { 11 if (x >= 5 && x <= 19) 12 { 13 x &= -2; 14 if (x < 4 || x > 18) 15 link_error (); 16 } 17 } 18 19 void f2(int x)20f2 (int x) 21 { 22 if (x >= 5 && x <= 19) 23 { 24 x |= 7; 25 if (x < 7 || x > 23) 26 link_error (); 27 } 28 } 29 30 void f3(int x)31f3 (int x) 32 { 33 if (x >= -18 && x <= 19) 34 { 35 x |= 7; 36 if (x < -17 || x > 23) 37 link_error (); 38 } 39 } 40 41 void f4(int x)42f4 (int x) 43 { 44 if (x >= 1603 && x <= 2015) 45 { 46 x &= 496; 47 if (x < 64 || x > 464) 48 link_error (); 49 } 50 } 51