/* PR rtl-optimization/23454 */ | |
/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
void foo (); | |
int a, b; | |
char c; | |
long long d, e; | |
static inline int | |
bar (const long long s, const long long t) | |
{ | |
return ((s < t) ? -1 : s > t ? 1 : 0); | |
} | |
int fn (); | |
int f; | |
void | |
baz (int x) | |
{ | |
long long g = fn (); | |
if (f) | |
{ | |
b++; | |
return; | |
} | |
if (g == 0) | |
a++; | |
if (x) | |
foo (); | |
if (!c) | |
c = 1; | |
else if (g != 0) | |
{ | |
if (bar (g, d) < 0) | |
d = g; | |
if (bar (g, e) > 0) | |
e = g; | |
} | |
} |