c-general.test 1.14 KB
You need a checkout of clang with compiler-rt to generate the
binary file here.  These shell commands can be used to regenerate
it.
$ SRC=path/to/llvm
$ CFE=$SRC/tools/clang
$ TESTDIR=$SRC/test/tools/llvm-profdata
$ CFE_TESTDIR=$CFE/test/Profile
$ clang -o a.out -fprofile-instr-generate $CFE_TESTDIR/c-general.c -mllvm -enable-name-compression=false
$ LLVM_PROFILE_FILE=$TESTDIR/Inputs/c-general.profraw ./a.out

RUN: llvm-profdata show %p/Inputs/c-general.profraw -o - | FileCheck %s
RUN: llvm-profdata show %p/Inputs/c-general.profraw --topn=3 -o - | FileCheck %s --check-prefix=TOPN
RUN: llvm-profdata show %p/Inputs/c-general.profraw -o - --function=switches | FileCheck %s -check-prefix=SWITCHES -check-prefix=CHECK

SWITCHES-LABEL: Counters:
SWITCHES-NEXT:   switches:
SWITCHES-NEXT:     Hash: 0xa50a07f391ae4be5
SWITCHES-NEXT:     Counters: 19
SWITCHES-NEXT:     Function count: 1
SWITCHES-LABEL: Functions shown: 1

CHECK-LABEL: Total functions: 12
CHECK-NEXT: Maximum function count: 1
CHECK-NEXT: Maximum internal block count: 100
TOPN: boolean_operators, max count = 100
TOPN-NEXT: simple_loops, max count = 100
TOPN-NEXT:  conditionals, max count = 100