- m4_define(`hm_arg_timeval_out_abs',`
- if (!begin_set) {
- Tvbf(" $'`1=%ld.%06ld",$'`1->tv_sec,$'`1->tv_usec);
- begin= *$'`1;
- begin_set= 1;
- } else {
- struct timeval diff;
- diff.tv_sec= $'`1->tv_sec - begin.tv_sec;
- diff.tv_usec= $'`1->tv_usec - begin.tv_usec;
- if (diff.tv_usec < 0) {
- diff.tv_sec -= 1;
- diff.tv_usec += 1000000;
- }
- assert(diff.tv_sec >= 0);
- assert(diff.tv_usec >= 0);
- Tvbf(" $'`1=+%ld.%06ld",diff.tv_sec,diff.tv_usec);
- }')