[llvm] Revert "[MC/DC] Make covmap tolerant of nested Decisions (#125407)" (PR #181069)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 12 13:49:43 PST 2026
gulfemsavrun wrote:
> @gulfemsavrun Could you elaborate? What did you resolve and what haven't you resolved? Is #180277 relevant?
PR #180277 is not relevant; the issue we are seeing is a specific regression introduced by [PR #125407](https://github.com/llvm/llvm-project/pull/125407)
In Fuchsia, we perform end-to-end coverage collection across a large codebase (C++ and Rust). This makes us sensitive to edge cases in coverage mapping logic.
The failure is triggered by this [line](https://github.com/llvm/llvm-project/pull/125407/changes#diff-44b7cba1a9d87f9ec9e067d93ea9d29ea4d9c669942d73f89233e39e28f9a5f0R817) in CoverageMapping.cpp.
```
if (auto E = evaluateAndCacheCounter(Region.FalseCount))
return E;
```
I think we should only evaluate `FalseCount` at this stage if it is an actual expression. Can we guard the evaluation as follows?
```
if (Region.FalseCount.isExpression()) {
if (auto E = evaluateAndCacheCounter(Region.FalseCount))
return E;
}
```
https://github.com/llvm/llvm-project/pull/181069
More information about the llvm-commits
mailing list