PGO: Clarify the testing README

<rdar://problem/16276448>

llvm-svn: 203593
This commit is contained in:
Duncan P. N. Exon Smith 2014-03-11 18:18:12 +00:00
parent 38402dc917
commit 0bc22877a2
1 changed files with 15 additions and 7 deletions

View File

@ -1,8 +1,16 @@
These are tests for instrumentation based profiling. This specifically
means the -fprofile-instr-generate and -fprofile-instr-use driver flags.
These are tests for instrumentation based profiling. This specifically means
the -fprofile-instr-generate and -fprofile-instr-use driver flags.
Tests in this directory should test both the generation of profile
data, and the use of that same data. As such, the input source file
should include a main function such that building with -use and
running the resulting program would generate the input data that is
consumed in the -generate case.
Tests in this directory should usually test both:
- the generation of instrumentation (-fprofile-instr-generate), and
- the use of profile data from instrumented runs (-fprofile-instr-use).
In order to test -fprofile-instr-use without actually running an instrumented
program, .profdata files are checked into Inputs/.
The input source files must include a main function such that building with
-fprofile-instr-generate and running the resulting program generates the same
.profdata file that is consumed by the tests for -fprofile-instr-use. Even
tests that only check -fprofile-instr-use should include such a main function,
so that profile data can be regenerated as the .profdata file format evolves.