llvm-project/clang/test/Profile
Duncan P. N. Exon Smith 7c41451bc9 PGO: Don't define instrumentation data available_externally
Variables with available_externally linkage can be dropped at will.
This causes link errors, since there are still references to the
instrumentation!  linkonce_odr is almost equivalent, so use that
instead.

As a drive-by fix (I don't have an Elf system, so I'm not sure how to
write a testcase), use linkonce linkage for the instrumentation of
extern_weak functions.

<rdar://problem/15943240>

llvm-svn: 204408
2014-03-20 22:50:08 +00:00
..
Inputs CodeGen: Include a function hash in instrumentation based profiling 2014-03-18 21:58:06 +00:00
README PGO: Clarify the testing README 2014-03-11 18:18:12 +00:00
c-attributes.c
c-counter-overflows.c PGO: Statically generate data structures 2014-03-17 21:18:30 +00:00
c-general.c PGO: Change runtime prefix from pgo to profile 2014-03-20 20:00:41 +00:00
c-linkage-available_externally.c PGO: Don't define instrumentation data available_externally 2014-03-20 22:50:08 +00:00
c-linkage.c PGO: Change runtime prefix from pgo to profile 2014-03-20 20:00:41 +00:00
c-outdated-data.c
cxx-class.cpp PGO: Change runtime prefix from pgo to profile 2014-03-20 20:00:41 +00:00
cxx-linkage.cpp PGO: Change runtime prefix from pgo to profile 2014-03-20 20:00:41 +00:00
cxx-throws.cpp PGO: Change runtime prefix from pgo to profile 2014-03-20 20:00:41 +00:00
objc-general.m PGO: Change runtime prefix from pgo to profile 2014-03-20 20:00:41 +00:00

README

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 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.