[PATCH] Small fix to HP timing printing
Chung-Lin Tang
chunglin_tang@mentor.com
Tue Sep 3 12:55:00 GMT 2019
Hi, when developing my dynamic linker DSO sorting patch [1], and measuring its
cycle performance, I found a small error in the HP_TIMING_PRINT trailing zero
setting; the '\0' should be set at MIN(Len,string length), instead of always
at the 'Len' position. Encountered some weirdness in printing counter results
because of this.
Okay for master?
[1] https://sourceware.org/ml/libc-alpha/2019-07/msg00472.html
https://sourceware.org/ml/libc-alpha/2019-07/msg00473.html
Thanks,
Chung-Lin
* sysdeps/generic/hp-timing-common.h (HP_TIMING_PRINT): Correct position
of string null termination.
-------------- next part --------------
diff --git a/sysdeps/generic/hp-timing-common.h b/sysdeps/generic/hp-timing-common.h
index 8749d25647..1fc92d1bd7 100644
--- a/sysdeps/generic/hp-timing-common.h
+++ b/sysdeps/generic/hp-timing-common.h
@@ -56,5 +56,5 @@
char *__cp = _itoa ((Val), __buf + sizeof (__buf), 10, 0); \
size_t __cp_len = MIN (__buf + sizeof (__buf) - __cp, __len); \
memcpy (__dest, __cp, __cp_len); \
- __dest[__len - 1] = '\0'; \
+ __dest[__cp_len - 1] = '\0'; \
} while (0)
More information about the Libc-alpha
mailing list