llvm-project/clang/test/Profile
David Blaikie ea3e51d73f Account for calling convention specifiers in function definitions in IR test cases
Several tests wouldn't pass when executed on an armv7a_pc_linux triple
due to the non-default arm_aapcs calling convention produced on the
function definitions in the IR output. Account for this with the
application of a little regex.

Patch by Ying Yi.

llvm-svn: 240971
2015-06-29 17:29:50 +00:00
..
Inputs Set function entry counts with -fprofile-instr-use. 2015-05-27 21:58:42 +00:00
README PGO: Clarify the testing README 2014-03-11 18:18:12 +00:00
c-attributes.c test: Use llvm-profdata merge in Profile tests 2014-04-17 22:49:06 +00:00
c-captured.c Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
c-counter-overflows.c IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
c-general.c InstrProf: Add a couple of checks to this test 2015-05-01 22:52:48 +00:00
c-generate.c InstrProf: Update name of compiler-rt routine for setting filename 2015-05-12 21:23:16 +00:00
c-linkage-available_externally.c Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
c-linkage.c InstrProf: Make profile variables private to reduce binary size overhead 2015-03-20 06:34:38 +00:00
c-outdated-data.c test: Use llvm-profdata merge in Profile tests 2014-04-17 22:49:06 +00:00
c-unprofiled-blocks.c test: Use llvm-profdata merge in Profile tests 2014-04-17 22:49:06 +00:00
c-unprofiled.c CodeGen: Improve warnings about uninstrumented files when profiling 2014-06-26 01:45:07 +00:00
c-unreachable-after-switch.c InstrProf: Make profile variables private to reduce binary size overhead 2015-03-20 06:34:38 +00:00
cxx-class.cpp IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
cxx-implicit.cpp CodeGen: Avoid instrumenting implicit Decls more effectively 2014-04-25 07:20:05 +00:00
cxx-lambda.cpp Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
cxx-linkage.cpp InstrProf: Make profile variables private to reduce binary size overhead 2015-03-20 06:34:38 +00:00
cxx-rangefor.cpp Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
cxx-templates.cpp Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
cxx-throws.cpp InstrProf: Match a bit less strictly - some targets may add signext 2015-04-28 06:55:23 +00:00
cxx-virtual-destructor-calls.cpp InstrProf: Change this triple back to %itanium_abi_triple 2015-05-20 16:25:35 +00:00
func-entry.c Fix PPC failure. Adjust CHECK pattern. 2015-05-28 11:25:52 +00:00
objc-general.m InstrProf: Make profile variables private to reduce binary size overhead 2015-03-20 06:34:38 +00:00
profile-does-not-exist.c Display profile file name when emitting a file not found diagnostic. 2015-06-25 22:56:00 +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.