1 /* PR rtl-optimization/23454 */ 2 /* { dg-do compile } */ 3 /* { dg-options "-O2" } */ 4 5 void foo (); 6 int a, b; 7 char c; 8 long long d, e; 9 10 static inline int bar(const long long s,const long long t)11bar (const long long s, const long long t) 12 { 13 return ((s < t) ? -1 : s > t ? 1 : 0); 14 } 15 16 int fn (); 17 int f; 18 19 void baz(int x)20baz (int x) 21 { 22 long long g = fn (); 23 if (f) 24 { 25 b++; 26 return; 27 } 28 if (g == 0) 29 a++; 30 if (x) 31 foo (); 32 if (!c) 33 c = 1; 34 else if (g != 0) 35 { 36 if (bar (g, d) < 0) 37 d = g; 38 if (bar (g, e) > 0) 39 e = g; 40 } 41 } 42