I would almost prefer that you use a Makefile trick here. We should avoid adding new #if's in the code when it's possible to avoid them.
At the very least, provide two _complete_ versions of the function. Your new comment is misleading, as it only applies to one branch. On Tue, 2009-12-15 at 15:46 +0100, Øyvind Harboe wrote: > A crisper implementation makes profiling a tad easier. > > Signed-off-by: Øyvind Harboe <oyvind.har...@zylin.com> > --- > src/helper/time_support.c | 16 ++++++++++++++++ > 1 files changed, 16 insertions(+), 0 deletions(-) > > diff --git a/src/helper/time_support.c b/src/helper/time_support.c > index 693528f..4e69c42 100644 > --- a/src/helper/time_support.c > +++ b/src/helper/time_support.c > @@ -29,6 +29,9 @@ > > #include "time_support.h" > > +#if BUILD_ECOSBOARD == 1 > +#include <cyg/kernel/kapi.h> > +#endif > > /* calculate difference between two struct timeval values */ > int timeval_subtract(struct timeval *result, struct timeval *x, struct > timeval *y) > @@ -73,13 +76,26 @@ int timeval_add_time(struct timeval *result, long sec, > long usec) > return 0; > } > > +/* simple and low overhead fetching of ms counter. Use only > + * the difference between ms counters returned from this fn. > + */ > int64_t timeval_ms() > { > +#if BUILD_ECOSBOARD == 0 > struct timeval now; > int retval = gettimeofday(&now, NULL); > if (retval < 0) > return retval; > return (int64_t)now.tv_sec * 1000 + now.tv_usec / 1000; > +#else > + /* Faster/less noisy implementation of getting ms when > + * profiling > + */ > + static const int ms_per_tick = > + (CYGNUM_HAL_RTC_NUMERATOR / CYGNUM_HAL_RTC_DENOMINATOR) > / 1000000; > + cyg_tick_count_t cur_time = cyg_current_time(); > + return ((int)cur_time) * ms_per_tick; > +#endif > } > > _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development