summaryrefslogtreecommitdiffstats
path: root/clang/test/CoverageMapping
Commit message (Collapse)AuthorAgeFilesLines
* InstrProf: Don't emit coverage for uninstantiated templatesJustin Bogner2014-11-181-4/+24
| | | | | | | | | | | | | We include unused functions and methods in -fcoverage-mapping so that we can differentiate between uninstrumented and unused. This can cause problems for uninstantiated templates though, since they may involve an incomplete type that can't be mangled. This shows up in things like libc++'s <unordered_map> and makes coverage unusable. Avoid the issue by skipping uninstantiated methods of a templated class. llvm-svn: 222204
* InstrProf: Avoid repeated linear searches in a hot pathJustin Bogner2014-10-014-39/+43
| | | | | | | | | | | | | | | | | | | | | | When generating coverage regions, we were doing a linear search through the existing regions in order to try to merge related ones. Most of the time this would find what it was looking for in a small number of steps and it wasn't a big deal, but in cases with many regions and few mergeable ones this leads to an absurd compile time regression. This changes the coverage mapping logic to do a single sort and then merge as we go, which is a bit simpler and about 100 times faster. I've also added FIXMEs on a couple of behaviours that seem a little suspect, while keeping them behaving as they were - I'll look into these soon. The test changes here are mostly tedious reorganization, because the ordering of regions we output has become slightly (but not completely) more consistent from the almost completely arbitrary ordering we got before. llvm-svn: 218738
* Coverage Mapping: store function's hash in coverage function records.Alex Lorenz2014-08-211-1/+1
| | | | | | | | | | The profile data format was recently updated and the new indexing api requires the code coverage tool to know the function's hash as well as the function's name to get the execution counts for a function. Differential Revision: http://reviews.llvm.org/D4995 llvm-svn: 216208
* Test: CoverageMapping: use "RUN: FileCheck" command instead of "RUN: cat | ↵Alex Lorenz2014-08-203-9/+9
| | | | | | | | | | Filecheck". Change the lit RUN commands for 3 tests to use the following pattern "FileCheck -input-file ..." instead of "cat ... | FileCheck ..." as suggested by Justin Bogner. llvm-svn: 216085
* Coverage mapping: fix mapping for objective-c for statementAlex Lorenz2014-08-201-0/+18
| | | | llvm-svn: 216082
* Coverage mapping: fix mapping for objective-c message expressionAlex Lorenz2014-08-201-0/+11
| | | | llvm-svn: 216081
* Test: Coverage Mapping: add missing RUN commandsAlex Lorenz2014-08-192-10/+10
| | | | | | | Add the llvm-lit RUN commands for the two coverage mapping tests that filecheck a temporary file. llvm-svn: 216020
* Add tests for coverage mapping generation.Alex Lorenz2014-08-1926-0/+712
| | | | | | | | | | This patch adds the tests for the coverage mapping generation. Most of the tests check the mapping regions produced by the generator, and one checks the llvm IR. Differential Revision: http://reviews.llvm.org/D4847 llvm-svn: 215995
* Revert "Add tests for coverage mapping generation."Justin Bogner2014-08-0927-1162/+0
| | | | | | | | | | | | | | | I reverted one of the added tests from r215261 in r215274, since it was failing on quite a few bots. It looks like this wasn't sufficient, as we're still getting failures on windows, like the following: http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/5378 I'm reverting this entire commit so the bots aren't blocked on these failures. This reverts commit r215261. llvm-svn: 215278
* Revert a failing test from r215261Justin Bogner2014-08-091-71/+0
| | | | | | | The (new) CoverageMapping/macroparams.c test is failing on a number of buildbots. Reverting it until Alex can investigate and fix the test. llvm-svn: 215274
* Add tests for coverage mapping generation.Alex Lorenz2014-08-0828-0/+1233
This patch adds the tests for the coverage mapping generation. Most of the tests check the mapping regions produced by the generator, and one checks the llvm IR. Differential Revision: http://reviews.llvm.org/D4793 llvm-svn: 215261
OpenPOWER on IntegriCloud