| # RUN: llvm-profdata show -ic-targets -all-functions %s | FileCheck %s --check-prefix=ICTXT --check-prefix=ICSUM | |
| # RUN: llvm-profdata show -ic-targets -counts -text -all-functions %s | FileCheck %s --check-prefix=ICTEXT | |
| # RUN: llvm-profdata merge -o %t.profdata %s | |
| # RUN: llvm-profdata show -ic-targets -all-functions %t.profdata | FileCheck %s --check-prefix=IC --check-prefix=ICSUM | |
| foo | |
| # Func Hash: | |
| 10 | |
| # Num Counters: | |
| 2 | |
| # Counter Values: | |
| 999000 | |
| 359800 | |
| foo2 | |
| # Func Hash: | |
| 10 | |
| # Num Counters: | |
| 2 | |
| # Counter Values: | |
| 1001000 | |
| 360200 | |
| main | |
| # Func Hash: | |
| 16650 | |
| # Num Counters: | |
| 4 | |
| # Counter Values: | |
| 2 | |
| 2000 | |
| 2000000 | |
| 999000 | |
| # NumValueKinds | |
| 1 | |
| # Value Kind IPVK_IndirectCallTarget | |
| 0 | |
| # NumSites | |
| 3 | |
| # Values for each site | |
| 0 | |
| 2 | |
| foo:100 | |
| foo2:1000 | |
| 1 | |
| foo2:20000 | |
| #ICTXT: Indirect Call Site Count: 3 | |
| #ICTXT-NEXT: Indirect Target Results: | |
| #ICTXT-NEXT: [ 1, foo, 100 ] | |
| #ICTXT-NEXT: [ 1, foo2, 1000 ] | |
| #ICTXT-NEXT: [ 2, foo2, 20000 ] | |
| #IC: Indirect Call Site Count: 3 | |
| #IC-NEXT: Indirect Target Results: | |
| #IC-NEXT: [ 1, foo2, 1000 ] | |
| #IC-NEXT: [ 1, foo, 100 ] | |
| #IC-NEXT: [ 2, foo2, 20000 ] | |
| #ICTEXT: foo:100 | |
| #ICTEXT-NEXT: foo2:1000 | |
| #ICTEXT-NEXT: 1 | |
| #ICTEXT-NEXT: foo2:20000 | |
| # | |
| bar | |
| # Func Hash: | |
| 10 | |
| # Num Counters: | |
| 2 | |
| # Counter Values: | |
| 999000 | |
| 359800 | |
| #ICSUM: Statistics for indirect call sites profile: | |
| #ICSUM: Total number of sites: 3 | |
| #ICSUM: Total number of sites with values: 2 | |
| #ICSUM: Total number of profiled values: 3 | |
| #ICSUM: NumTargets, SiteCount | |
| #ICSUM 1, 1 | |
| #ICSUM 2, 1 |