| /* { dg-do run } */ |
| /* { dg-options "-O2 -finstrument-functions" } */ |
| |
| extern void abort (void); |
| extern void exit (int); |
| |
| double |
| foo (double a, double b) |
| { |
| double c; |
| if (0.0 < a) |
| c = a; |
| else if (b > 0.0) |
| c = 0.0; |
| else |
| return 0; |
| return 2.0 * (b - c); |
| } |
| |
| int main () |
| { |
| if (foo (1.0, 4.0) != 6.0) |
| abort (); |
| exit (0); |
| } |
| |
| void __attribute__((no_instrument_function)) __cyg_profile_func_enter(void *this_fn, void *call_site) { } |
| void __attribute__((no_instrument_function)) __cyg_profile_func_exit(void *this_fn, void *call_site) { } |