/* { dg-do compile} */ | |
/* { dg-options "-O2 -fdump-tree-evrp -fdisable-tree-ethread" } */ | |
char a[2]; | |
extern int x; | |
void foo(void); | |
signed char g (signed char min, signed char max) | |
{ | |
signed char i = x; | |
return i < min || max < i ? min : i; | |
} | |
void gg (void) | |
{ | |
signed char t = g (0, 9); | |
/* Ranger should be able to remove the call to foo (). */ | |
if (t > 9 || t < 0) | |
foo (); | |
} | |
/* { dg-final { scan-tree-dump-not "foo" "evrp" } } */ |