42 lines
		
	
	
		
			979 B
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			979 B
		
	
	
	
		
			Plaintext
		
	
	
	
| # Make sure we don't try to combine counters with the same function
 | |
| # name and a matching hash if the number of counters differs
 | |
| 
 | |
| # RUN: llvm-profdata merge %s -o %t.profdata 2>&1 | FileCheck -check-prefix=MERGE_ERRS %s
 | |
| # RUN: llvm-profdata show %t.profdata -all-functions -counts > %t.out
 | |
| # RUN: FileCheck %s -input-file %t.out
 | |
| foo
 | |
| 1024
 | |
| 4
 | |
| 1
 | |
| 2
 | |
| 4
 | |
| 8
 | |
| 
 | |
| # The hash matches, but we can't combine these because the number of
 | |
| # counters differs.
 | |
| # MERGE_ERRS: count-mismatch.proftext: foo: Function basic block count change detected (counter mismatch)
 | |
| # MERGE_ERRS: Make sure that all profile data to be merged is generated from the same binary.
 | |
| foo
 | |
| 1024
 | |
| 3
 | |
| 2
 | |
| 4
 | |
| 8
 | |
| 
 | |
| # This one does match, so it should combine with the first just fine.
 | |
| # CHECK: Hash: 0x{{0+}}400
 | |
| # CHECK-NEXT: Counters: 4
 | |
| # CHECK-NEXT: Function count: 5
 | |
| # CHECK-NEXT: Block counts: [10, 20, 40]
 | |
| foo
 | |
| 1024
 | |
| 4
 | |
| 4
 | |
| 8
 | |
| 16
 | |
| 32
 | |
| 
 | |
| # CHECK: Total functions: 1
 | |
| # CHECK: Maximum function count: 5
 | |
| # CHECK: Maximum internal block count: 40
 |