[llvm-branch-commits] [clang] [llvm] [Coverage] Improve performance of propagating Counter of Expansions (PR #122589)
NAKAMURA Takumi via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Apr 2 04:40:45 PDT 2025
================
@@ -707,13 +707,16 @@ TEST_P(CoverageMappingTest, expansion_gets_first_counter) {
addCMR(Counter::getCounter(2), "foo", 1, 1, 20, 1);
addExpansionCMR("bar", "foo", 3, 3, 3, 3);
- writeAndReadCoverageRegions();
- ASSERT_EQ(1u, OutputFunctions.size());
- OutputFunctionCoverageData &Output = OutputFunctions.back();
+ ProfileWriter.addRecord({"func", 0x1234, {1, 2, 4}}, Err);
+ EXPECT_THAT_ERROR(loadCoverageMapping(), Succeeded());
+
+ auto FunctionRecords = LoadedCoverage->getCoveredFunctions();
+ ASSERT_EQ(1u, std::distance(FunctionRecords.begin(), FunctionRecords.end()));
- ASSERT_EQ(CounterMappingRegion::ExpansionRegion, Output.Regions[2].Kind);
- ASSERT_EQ(Counter::getCounter(2), Output.Regions[2].Count);
- ASSERT_EQ(3U, Output.Regions[2].LineStart);
+ const auto &CR = (*FunctionRecords.begin()).CountedRegions;
+ ASSERT_EQ(CounterMappingRegion::ExpansionRegion, CR[2].Kind);
+ ASSERT_EQ(4u, CR[2].ExecutionCount);
+ ASSERT_EQ(3U, CR[2].LineStart);
----------------
chapuni wrote:
This should work w/o this change. May I split out or migrate this in advance?
https://github.com/llvm/llvm-project/pull/122589
More information about the llvm-branch-commits
mailing list