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 <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
			
			
				maint
			
			
		
							parent
							
								
									e6dfcd6767
								
							
						
					
					
						commit
						c335d74d34
					
				
							
								
								
									
										13
									
								
								alloc.c
								
								
								
								
							
							
						
						
									
										13
									
								
								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); | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Jeff King
						Jeff King