llvm-project/clang/test/CoverageMapping
Vedant Kumar 3919a501f3 [Lexer] Report more precise skipped regions (PR34166)
This patch teaches the preprocessor to report more precise source ranges for
code that is skipped due to conditional directives.

The new behavior includes the '#' from the opening directive and the full text
of the line containing the closing directive in the skipped area. This matches
up clang's behavior (we don't IRGen the code between the closing "endif" and
the end of a line).

This also affects the code coverage implementation. See llvm.org/PR34166 (this
also happens to be rdar://problem/23224058).

The old behavior (report the end of the skipped range as the end
location of the 'endif' token) is preserved for indexing clients.

Differential Revision: https://reviews.llvm.org/D36642

llvm-svn: 312947
2017-09-11 20:47:42 +00:00
..
Inputs Reapply [Coverage] Fix an assertion failure if the definition of an unused function spans multiple files. 2016-06-07 10:07:51 +00:00
abspath.cpp [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
block-storage-starts-region.m [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
break.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
builtinmacro.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
casts.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
classtemplate.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
comment-in-macro.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
continue.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
control-flow-macro.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
decl.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
deferred-region.cpp [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
empty-destructor.cpp [Coverage] Avoid null deref in skipRegionMappingForDecl (fixes PR32761) 2017-04-24 20:52:04 +00:00
header.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
if.cpp [Coverage] Support for C++17 if initializers 2016-10-14 23:38:16 +00:00
implicit-def-in-macro.m Suppress uninteresting warnings in test/CoverageMapping, NFC. 2017-02-25 07:05:41 +00:00
include-macros.c [Lexer] Don't merge macro args from different macro files 2016-05-19 23:44:02 +00:00
includehell.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
ir.c Restrengthen tests relaxed in r259955 2016-02-17 00:58:13 +00:00
label.cpp [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
lambda.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
logical.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
loopmacro.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
loops.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
macro-expansion.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
macro-expressions.cpp Suppress uninteresting warnings in test/CoverageMapping, NFC. 2017-02-25 07:05:41 +00:00
macroception.c [Coverage] Suppress creating a code region if the same area is covered by an expansion region. 2016-08-31 07:04:16 +00:00
macroparams.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
macroparams2.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
macros.c [Coverage] Suppress creating a code region if the same area is covered by an expansion region. 2016-08-31 07:04:16 +00:00
macroscopes.cpp [Coverage] Fix an issue where a coverage region might not be created for a macro containing a loop statement. 2016-05-04 15:38:26 +00:00
md.cpp [coverage] Special-case calls to noreturn functions. 2017-08-08 20:10:14 +00:00
moremacros.c [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
nestedclass.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
objc.m Suppress uninteresting warnings in test/CoverageMapping, NFC. 2017-02-25 07:05:41 +00:00
pr32679.cpp [Coverage] Don't emit mappings for functions in dependent contexts (fixes PR32679) 2017-04-19 17:58:30 +00:00
preprocessor.c [Lexer] Report more precise skipped regions (PR34166) 2017-09-11 20:47:42 +00:00
return.c [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
switch.cpp [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
switchmacro.c [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
system_macro.cpp [Coverage] Do not write out coverage mappings with zero entries 2016-07-26 00:24:59 +00:00
templates.cpp [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
test.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
trycatch.cpp [Coverage] Precise region termination with deferred regions (reapply) 2017-09-08 18:44:56 +00:00
trymacro.cpp [Coverage] Push a new region when handling CXXTryStmts 2016-06-22 19:57:58 +00:00
unreachable-macro.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00
unused_function.cpp Reapply [Coverage] Fix an assertion failure if the definition of an unused function spans multiple files. 2016-06-07 10:07:51 +00:00
unused_names.c clang/test/CoverageMapping/unused_names.c: Relax an expression for targeting PECOFF. 2017-04-14 03:16:48 +00:00
while.c [PGO] cc1 option name change for profile instrumentation 2016-02-04 18:39:09 +00:00