| /* { dg-do compile} */ | |
| /* { dg-options "-O2 -fira-region=all -fnon-call-exceptions" } */ | |
| extern long double getme (void); | |
| extern void useme (long double); | |
| struct Frame { | |
| long double tmp; | |
| }; | |
| void bugme (int n, long double ld1, long double ld2, long double ld3, | |
| long double ld4, long double ld5) | |
| { | |
| Frame f; | |
| int i; | |
| f.tmp = getme(); | |
| try { | |
| for (i = 0; i < n; i++) | |
| { | |
| f.tmp += 1.0; | |
| } | |
| } catch (...) { | |
| f.tmp += 1.0; | |
| } | |
| ld1++; | |
| ld2++; | |
| ld3++; | |
| ld4++; | |
| ld5++; | |
| useme (f.tmp); | |
| } |