@@ -1601,12 +1601,13 @@ struct CounterCoverageMappingBuilder
16011601 llvm::EnableSingleByteCoverage
16021602 ? getRegionCounter (S->getCond ())
16031603 : addCounters (ParentCount, BackedgeCount, BC.ContinueCount );
1604- auto [ExecCount, ExitCount] =
1604+ auto BranchCount =
16051605 (llvm::EnableSingleByteCoverage
16061606 ? BranchCounterPair{getRegionCounter (S), Counter::getZero ()}
16071607 : getBranchCounterPair (S, CondCount));
16081608 if (!llvm::EnableSingleByteCoverage) {
1609- assert (ExecCount.isZero () || ExecCount == BodyCount);
1609+ assert (BranchCount.Executed .isZero () ||
1610+ BranchCount.Executed == BodyCount);
16101611 }
16111612 propagateCounts (CondCount, S->getCond ());
16121613 adjustForOutOfOrderTraversal (getEnd (S));
@@ -1618,7 +1619,7 @@ struct CounterCoverageMappingBuilder
16181619
16191620 Counter OutCount = llvm::EnableSingleByteCoverage
16201621 ? getRegionCounter (S)
1621- : addCounters (BC.BreakCount , ExitCount );
1622+ : addCounters (BC.BreakCount , BranchCount. Skipped );
16221623
16231624 if (!IsCounterEqual (OutCount, ParentCount)) {
16241625 pushRegion (OutCount);
@@ -1629,7 +1630,7 @@ struct CounterCoverageMappingBuilder
16291630
16301631 // Create Branch Region around condition.
16311632 if (!llvm::EnableSingleByteCoverage)
1632- createBranchRegion (S->getCond (), BodyCount, ExitCount );
1633+ createBranchRegion (S->getCond (), BodyCount, BranchCount. Skipped );
16331634 }
16341635
16351636 void VisitDoStmt (const DoStmt *S) {
@@ -1658,26 +1659,27 @@ struct CounterCoverageMappingBuilder
16581659 Counter CondCount = llvm::EnableSingleByteCoverage
16591660 ? getRegionCounter (S->getCond ())
16601661 : addCounters (BackedgeCount, BC.ContinueCount );
1661- auto [ExecCount, ExitCount] =
1662+ auto BranchCount =
16621663 (llvm::EnableSingleByteCoverage
16631664 ? BranchCounterPair{getRegionCounter (S), Counter::getZero ()}
16641665 : getBranchCounterPair (S, CondCount));
16651666 if (!llvm::EnableSingleByteCoverage) {
1666- assert (ExecCount.isZero () || ExecCount == BodyCount);
1667+ assert (BranchCount.Executed .isZero () ||
1668+ BranchCount.Executed == BodyCount);
16671669 }
16681670 propagateCounts (CondCount, S->getCond ());
16691671
16701672 Counter OutCount = llvm::EnableSingleByteCoverage
16711673 ? getRegionCounter (S)
1672- : addCounters (BC.BreakCount , ExitCount );
1674+ : addCounters (BC.BreakCount , BranchCount. Skipped );
16731675 if (!IsCounterEqual (OutCount, ParentCount)) {
16741676 pushRegion (OutCount);
16751677 GapRegionCounter = OutCount;
16761678 }
16771679
16781680 // Create Branch Region around condition.
16791681 if (!llvm::EnableSingleByteCoverage)
1680- createBranchRegion (S->getCond (), BodyCount, ExitCount );
1682+ createBranchRegion (S->getCond (), BodyCount, BranchCount. Skipped );
16811683
16821684 if (BodyHasTerminateStmt)
16831685 HasTerminateStmt = true ;
@@ -1726,12 +1728,13 @@ struct CounterCoverageMappingBuilder
17261728 : addCounters (
17271729 addCounters (ParentCount, BackedgeCount, BodyBC.ContinueCount ),
17281730 IncrementBC.ContinueCount );
1729- auto [ExecCount, ExitCount] =
1731+ auto BranchCount =
17301732 (llvm::EnableSingleByteCoverage
17311733 ? BranchCounterPair{getRegionCounter (S), Counter::getZero ()}
17321734 : getBranchCounterPair (S, CondCount));
17331735 if (!llvm::EnableSingleByteCoverage) {
1734- assert (ExecCount.isZero () || ExecCount == BodyCount);
1736+ assert (BranchCount.Executed .isZero () ||
1737+ BranchCount.Executed == BodyCount);
17351738 }
17361739
17371740 if (const Expr *Cond = S->getCond ()) {
@@ -1747,7 +1750,8 @@ struct CounterCoverageMappingBuilder
17471750 Counter OutCount =
17481751 llvm::EnableSingleByteCoverage
17491752 ? getRegionCounter (S)
1750- : addCounters (BodyBC.BreakCount , IncrementBC.BreakCount , ExitCount);
1753+ : addCounters (BodyBC.BreakCount , IncrementBC.BreakCount ,
1754+ BranchCount.Skipped );
17511755 if (!IsCounterEqual (OutCount, ParentCount)) {
17521756 pushRegion (OutCount);
17531757 GapRegionCounter = OutCount;
@@ -1757,7 +1761,7 @@ struct CounterCoverageMappingBuilder
17571761
17581762 // Create Branch Region around condition.
17591763 if (!llvm::EnableSingleByteCoverage)
1760- createBranchRegion (S->getCond (), BodyCount, ExitCount );
1764+ createBranchRegion (S->getCond (), BodyCount, BranchCount. Skipped );
17611765 }
17621766
17631767 void VisitCXXForRangeStmt (const CXXForRangeStmt *S) {
@@ -1792,9 +1796,10 @@ struct CounterCoverageMappingBuilder
17921796 OutCount = getRegionCounter (S);
17931797 else {
17941798 LoopCount = addCounters (ParentCount, BackedgeCount, BC.ContinueCount );
1795- auto [ExecCount, SkipCount] = getBranchCounterPair (S, LoopCount);
1796- ExitCount = SkipCount;
1797- assert (ExecCount.isZero () || ExecCount == BodyCount);
1799+ auto BranchCount = getBranchCounterPair (S, LoopCount);
1800+ ExitCount = BranchCount.Skipped ;
1801+ assert (BranchCount.Executed .isZero () ||
1802+ BranchCount.Executed == BodyCount);
17981803 OutCount = addCounters (BC.BreakCount , ExitCount);
17991804 }
18001805 if (!IsCounterEqual (OutCount, ParentCount)) {
@@ -1828,9 +1833,9 @@ struct CounterCoverageMappingBuilder
18281833
18291834 Counter LoopCount =
18301835 addCounters (ParentCount, BackedgeCount, BC.ContinueCount );
1831- auto [ExecCount, ExitCount] = getBranchCounterPair (S, LoopCount);
1832- assert (ExecCount. isZero () || ExecCount == BodyCount);
1833- Counter OutCount = addCounters (BC.BreakCount , ExitCount );
1836+ auto BranchCount = getBranchCounterPair (S, LoopCount);
1837+ assert (BranchCount. Executed . isZero () || BranchCount. Executed == BodyCount);
1838+ Counter OutCount = addCounters (BC.BreakCount , BranchCount. Skipped );
18341839 if (!IsCounterEqual (OutCount, ParentCount)) {
18351840 pushRegion (OutCount);
18361841 GapRegionCounter = OutCount;
0 commit comments