From: Jeff King Date: Tue, 10 Jun 2014 21:38:47 +0000 (-0400) Subject: alloc: include any-object allocations in alloc_report X-Git-Tag: v2.0.2~4^2~15 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=c335d74d349d201cb7627aa7233638d2953a4b02;p=git-core%2Fgit.git alloc: include any-object allocations in alloc_report When 2c1cbec (Use proper object allocators for unknown object nodes too, 2007-04-16), added a special "any_object" allocator, it never taught alloc_report to report on it. To do so we need to add an extra type argument to the REPORT macro, as that commit did for DEFINE_ALLOCATOR. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- diff --git a/alloc.c b/alloc.c index f3ee74569..38ff7e7e8 100644 --- a/alloc.c +++ b/alloc.c @@ -57,13 +57,14 @@ static void report(const char *name, unsigned int count, size_t size) name, count, (uintmax_t) size); } -#define REPORT(name) \ - report(#name, name##_allocs, name##_allocs * sizeof(struct name) >> 10) +#define REPORT(name, type) \ + report(#name, name##_allocs, name##_allocs * sizeof(type) >> 10) void alloc_report(void) { - REPORT(blob); - REPORT(tree); - REPORT(commit); - REPORT(tag); + REPORT(blob, struct blob); + REPORT(tree, struct tree); + REPORT(commit, struct commit); + REPORT(tag, struct tag); + REPORT(object, union any_object); }