diff options
Diffstat (limited to 'test/tools/llvm-cov')
-rw-r--r-- | test/tools/llvm-cov/Inputs/copy_block_helper.gcda | bin | 0 -> 432 bytes | |||
-rw-r--r-- | test/tools/llvm-cov/Inputs/copy_block_helper.gcno | bin | 0 -> 1140 bytes | |||
-rw-r--r-- | test/tools/llvm-cov/copy_block_helper.m | 29 | ||||
-rw-r--r-- | test/tools/llvm-cov/lit.local.cfg | 2 |
4 files changed, 30 insertions, 1 deletions
diff --git a/test/tools/llvm-cov/Inputs/copy_block_helper.gcda b/test/tools/llvm-cov/Inputs/copy_block_helper.gcda Binary files differnew file mode 100644 index 0000000000..d7ff4696df --- /dev/null +++ b/test/tools/llvm-cov/Inputs/copy_block_helper.gcda diff --git a/test/tools/llvm-cov/Inputs/copy_block_helper.gcno b/test/tools/llvm-cov/Inputs/copy_block_helper.gcno Binary files differnew file mode 100644 index 0000000000..a9d1084064 --- /dev/null +++ b/test/tools/llvm-cov/Inputs/copy_block_helper.gcno diff --git a/test/tools/llvm-cov/copy_block_helper.m b/test/tools/llvm-cov/copy_block_helper.m new file mode 100644 index 0000000000..61a91c1e77 --- /dev/null +++ b/test/tools/llvm-cov/copy_block_helper.m @@ -0,0 +1,29 @@ +// Make sure that compiler-added functions (whose line number is zero) don't +// crash llvm-cov. + +// We need shell for cd +// REQUIRES: shell + +// RUN: rm -rf %t +// RUN: mkdir %t +// RUN: cd %t +// RUN: cp %s %p/Inputs/copy_block_helper.gc* . + +// RUN: llvm-cov copy_block_helper.m | FileCheck %s --check-prefix=STDOUT +// STDOUT: File 'copy_block_helper.m' +// STDOUT: Lines executed:100.00% of 5 +// STDOUT: copy_block_helper.m:creating 'copy_block_helper.m.gcov' + +// RUN: FileCheck %s --check-prefix=GCOV < %t/copy_block_helper.m.gcov +// GCOV: -: 0:Runs:1 +// GCOV: -: 0:Programs:1 + +id test_helper(id (^foo)(void)) { return foo(); } // GCOV: 1: [[@LINE]]:id +void test(id x) { // GCOV: -: [[@LINE]]:void test + test_helper(^{ // GCOV: 2: [[@LINE]]: test_helper + return x; // GCOV: 1: [[@LINE]]: return + }); // GCOV: -: [[@LINE]]: +} // GCOV: 1: [[@LINE]]:} + +// GCOV: 1: [[@LINE+1]]:int main +int main(int argc, const char *argv[]) { test(0); } diff --git a/test/tools/llvm-cov/lit.local.cfg b/test/tools/llvm-cov/lit.local.cfg index df9b335dd1..f738810475 100644 --- a/test/tools/llvm-cov/lit.local.cfg +++ b/test/tools/llvm-cov/lit.local.cfg @@ -1 +1 @@ -config.suffixes = ['.test'] +config.suffixes = ['.test', '.m'] |