• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1You need a checkout of clang with compiler-rt to generate the
2binary file here.  These shell commands can be used to regenerate
3it.
4$ SRC=path/to/llvm
5$ CFE=$SRC/tools/clang
6$ TESTDIR=$SRC/test/tools/llvm-profdata
7$ CFE_TESTDIR=$CFE/test/Profile
8$ clang -o a.out -fprofile-instr-generate $CFE_TESTDIR/c-general.c -mllvm -enable-name-compression=false
9$ LLVM_PROFILE_FILE=$TESTDIR/Inputs/c-general.profraw ./a.out
10
11RUN: llvm-profdata show %p/Inputs/c-general.profraw -o - | FileCheck %s
12RUN: llvm-profdata show %p/Inputs/c-general.profraw --topn=3 -o - | FileCheck %s --check-prefix=TOPN
13RUN: llvm-profdata show %p/Inputs/c-general.profraw -o - --function=switches | FileCheck %s -check-prefixes=SWITCHES,CHECK
14
15SWITCHES-LABEL: Counters:
16SWITCHES-NEXT:   switches:
17SWITCHES-NEXT:     Hash: 0xa50a07f391ae4be5
18SWITCHES-NEXT:     Counters: 19
19SWITCHES-NEXT:     Function count: 1
20SWITCHES-LABEL: Functions shown: 1
21
22CHECK-LABEL: Total functions: 12
23CHECK-NEXT: Maximum function count: 1
24CHECK-NEXT: Maximum internal block count: 100
25TOPN: boolean_operators, max count = 100
26TOPN-NEXT: simple_loops, max count = 100
27TOPN-NEXT:  conditionals, max count = 100
28