llvm-project/clang/test
Vedant Kumar 85e6dce1eb [Coverage] Precise region termination with deferred regions
The current coverage implementation doesn't handle region termination
very precisely. Take for example an `if' statement with a `return':

  void f() {
    if (true) {
      return; // The `if' body's region is terminated here.
    }
    // This line gets the same coverage as the `if' condition.
  }

If the function `f' is called, the line containing the comment will be
marked as having executed once, which is not correct.

The solution here is to create a deferred region after terminating a
region. The deferred region is completed once the start location of the
next statement is known, and is then pushed onto the region stack.
In the cases where it's not possible to complete a deferred region, it
can safely be dropped.

Testing: lit test updates, a stage2 coverage-enabled build of clang
llvm-svn: 310010
2017-08-04 00:29:20 +00:00
..
ARCMT clang/test/ARCMT/remap-applying.c: Use %/s on the command line of echo(1). 2017-04-28 05:02:52 +00:00
ASTMerge Revert r299355 "[ASTImporter] Fix for importing unnamed structs" 2017-04-03 21:06:45 +00:00
Analysis [Analyzer] Add support for displaying cross-file diagnostic paths in HTML output 2017-08-03 18:12:22 +00:00
CXX [modules ts] Basic for module linkage. 2017-07-07 20:04:28 +00:00
CodeCompletion Fixed failing assert in code completion. 2017-07-21 09:24:00 +00:00
CodeGen [mips] Revert r309942 & r309940 2017-08-03 19:39:51 +00:00
CodeGenCUDA CodeGenModule: Always output wchar_size, check LLVM assumptions. 2017-05-20 01:29:55 +00:00
CodeGenCXX [ubsan] Have -fsanitize=vptr emit a null check if -fsanitize=null isn't available 2017-08-02 18:10:31 +00:00
CodeGenCoroutines [coroutines] Evaluate the operand of void `co_return` expressions. 2017-07-31 07:48:13 +00:00
CodeGenObjC Adopt to LLVM API change (llvm.dbg.value no longer has an offset) 2017-07-28 20:21:08 +00:00
CodeGenObjCXX test: fix test for release builds 2017-06-27 18:57:50 +00:00
CodeGenOpenCL [OpenCL] Add missing subgroup builtins 2017-08-01 13:27:09 +00:00
Coverage [Analyzer] Add support for displaying cross-file diagnostic paths in HTML output 2017-08-03 18:12:22 +00:00
CoverageMapping [Coverage] Precise region termination with deferred regions 2017-08-04 00:29:20 +00:00
Driver [Driver][Darwin] Pass -munwind-table when !UseSjLjExceptions. 2017-08-03 23:55:42 +00:00
FixIt -Wpragma-pack: add an additional note and fixit when warning 2017-07-31 13:37:50 +00:00
Format [clang-format] Replace IncompleteFormat by a struct with Line 2017-04-21 14:35:20 +00:00
Frontend Remove Bitrig: Clang Changes 2017-07-21 22:46:31 +00:00
Headers [Headers] Add a test for arm64intr.h 2017-07-27 19:45:13 +00:00
Import [ExternalASTMerger] Import Objective-C classes 2017-07-25 19:54:22 +00:00
Index [index] Set SymbolSubKind::Accessor[GS]etter on class methods 2017-07-21 23:04:27 +00:00
Integration Tie the macOS tests in test/Integration to the latest macOS SDK 2017-06-02 11:26:35 +00:00
Layout Print nested name specifiers for typedefs and type aliases 2017-03-10 15:04:58 +00:00
Lexer Reorder tests to match latest SD-6 draft. 2017-07-25 23:31:42 +00:00
Misc [diagtool] Add ability to pass in the id and return the name for a 2017-08-03 16:13:13 +00:00
Modules Fix incorrect use of current directory to find moved paths in ASTReader. 2017-07-25 10:22:06 +00:00
OpenMP Recommit r308327 3rd time: Add a warning for missing 2017-07-28 14:41:21 +00:00
PCH -Wpragma-pack: add an additional note and fixit when warning 2017-07-31 13:37:50 +00:00
Parser Recommit r308327 3rd time: Add a warning for missing 2017-07-28 14:41:21 +00:00
Preprocessor Define _GNU_SOURCE for RTEMS c++ 2017-08-02 14:36:52 +00:00
Profile [Profile] Do not assign counters to functions without bodies 2017-06-30 21:02:14 +00:00
Rewriter [Objective-C] Fix non-determinism in clang 2017-07-06 18:49:57 +00:00
Sema [Sema] Fix lax conversion between non ext vectors 2017-08-01 19:05:25 +00:00
SemaCUDA [CUDA] Let NVPTX inherit the host's calling conventions. 2017-01-05 16:53:38 +00:00
SemaCXX Don't emit undefined-internal warnings for CXXDeductionGuideDecls. 2017-08-03 19:24:27 +00:00
SemaObjC Recommit r308327 3rd time: Add a warning for missing 2017-07-28 14:41:21 +00:00
SemaObjCXX Fix errored return value in CheckFunctionReturnType and add a fixit hint 2017-05-10 20:03:16 +00:00
SemaOpenCL [OpenCL] Add missing subgroup builtins 2017-08-01 13:27:09 +00:00
SemaTemplate Regression test for PR10856 2017-07-26 14:58:55 +00:00
TableGen
Tooling [clang-diff] Add initial implementation 2017-07-21 12:49:28 +00:00
Unit Change remaining references to lit.util.capture to use subprocess.check_output. 2017-07-06 21:46:47 +00:00
VFS
clang-rename Move ClassReplacements.cpp test from clang-rename tests to the 2017-06-30 16:58:36 +00:00
.clang-format
CMakeLists.txt Clang's tests should depend on clang-diff 2017-07-21 13:12:01 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg [clang] Add abi-breaking-checks support to clang 2017-07-25 23:00:02 +00:00
lit.site.cfg.in [clang] Add abi-breaking-checks support to clang 2017-07-25 23:00:02 +00:00
make_test_dirs.pl