X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fstat%2Fstatev.h;h=886a223c90afee233d3adef2622d9a9d07b83df6;hb=3da5ed2598245b896255bc444aaa1768f6098cfe;hp=c43855c87c6b399607689580ebba15d3a875aa15;hpb=9e7fd69353fcddaeae061d71d6c78dba1270d7cf;p=libfirm diff --git a/ir/stat/statev.h b/ir/stat/statev.h index c43855c87..886a223c9 100644 --- a/ir/stat/statev.h +++ b/ir/stat/statev.h @@ -31,6 +31,7 @@ #if !defined(FIRM_STATISTICS) || defined(DISABLE_STATEV) #define stat_ev_do(expr) +#define stat_ev_enabled 0 #define stat_ev_if if (0) #define stat_ev_dbl(name, val) #define stat_ev_int(name, val) @@ -55,22 +56,20 @@ #include #include "stat_timing.h" -extern void stat_ev_printf(char ev_type, const char *key, const char *fmt, ...); +extern void stat_ev_printf(char ev_type, const char *key, const char *fmt, ...); -extern int stat_ev_enabled; -extern int stat_ev_timer_sp; -extern timing_ticks_t stat_ev_timer_elapsed[]; -extern timing_ticks_t stat_ev_timer_start[]; -extern timing_sched_env_t stat_ev_sched_rt; -extern timing_sched_env_t stat_ev_sched_normal; +extern int stat_ev_enabled; +extern int stat_ev_timer_sp; +extern timing_ticks_t stat_ev_timer_elapsed[]; +extern timing_ticks_t stat_ev_timer_start[]; -static inline __attribute__((unused)) void stat_ev_tim_push(void) { +static inline void stat_ev_tim_push(void) { timing_ticks_t temp; int sp = stat_ev_timer_sp++; timing_ticks(temp); - if (sp == 0) - timing_sched_set(&stat_ev_sched_rt); - else { + if (sp == 0) { + timing_enter_max_prio(); + } else { timing_ticks_sub(temp, stat_ev_timer_start[sp - 1]); timing_ticks_add(stat_ev_timer_elapsed[sp - 1], temp); } @@ -78,7 +77,7 @@ static inline __attribute__((unused)) void stat_ev_tim_push(void) { timing_ticks(stat_ev_timer_start[sp]); } -static inline __attribute__((unused)) void stat_ev_tim_pop(const char *name) { +static inline void stat_ev_tim_pop(const char *name) { int sp; timing_ticks_t temp; timing_ticks(temp); @@ -87,10 +86,11 @@ static inline __attribute__((unused)) void stat_ev_tim_pop(const char *name) { timing_ticks_add(stat_ev_timer_elapsed[sp], temp); if (name != NULL && stat_ev_enabled) stat_ev_printf('E', name, "%g", timing_ticks_dbl(stat_ev_timer_elapsed[sp])); - if (sp == 0) - timing_sched_set(&stat_ev_sched_normal); - else + if (sp == 0) { + timing_leave_max_prio(); + } else { timing_ticks(stat_ev_timer_start[sp - 1]); + } } #define stat_ev_ctx_push_fmt(key, fmt, value) \