<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/compiler-rt/test/profile/Linux/coverage-statement-expression.cpp, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>Reland [Coverage] Fix region termination for GNU statement expressions (#132222)</title>
<updated>2025-03-21T15:59:01+00:00</updated>
<author>
<name>Justin Cady</name>
<email>desk@justincady.com</email>
</author>
<published>2025-03-21T15:59:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=954a3de7838a8c496ef1d1730127415b3e9786f9'/>
<id>954a3de7838a8c496ef1d1730127415b3e9786f9</id>
<content type='text'>
Relands #130976 with adjustments to test requirements.

Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].

In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.

This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.

[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

Fixes #124296</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Relands #130976 with adjustments to test requirements.

Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].

In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.

This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.

[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

Fixes #124296</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "[Coverage] Fix region termination for GNU statement expressions" (#132095)</title>
<updated>2025-03-19T20:48:34+00:00</updated>
<author>
<name>Justin Cady</name>
<email>desk@justincady.com</email>
</author>
<published>2025-03-19T20:48:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=bd2d8c0a7ee196cc60ab0d46d6fab416b1697ae1'/>
<id>bd2d8c0a7ee196cc60ab0d46d6fab416b1697ae1</id>
<content type='text'>
Reverts llvm/llvm-project#130976

Breaks clang-cmake-x86_64-avx512-linux bot.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reverts llvm/llvm-project#130976

Breaks clang-cmake-x86_64-avx512-linux bot.</pre>
</div>
</content>
</entry>
<entry>
<title>[Coverage] Fix region termination for GNU statement expressions (#130976)</title>
<updated>2025-03-19T20:22:26+00:00</updated>
<author>
<name>Justin Cady</name>
<email>desk@justincady.com</email>
</author>
<published>2025-03-19T20:22:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0827e3aae6eb69c2a6fa842ffa780881feb45b5d'/>
<id>0827e3aae6eb69c2a6fa842ffa780881feb45b5d</id>
<content type='text'>
Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].

In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.

This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.

[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

Fixes #124296</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].

In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.

This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.

[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

Fixes #124296</pre>
</div>
</content>
</entry>
</feed>
