[llvm] [llvm-profdata][StaticDataLayout] Print summary of data access profiles in llvm-profdata (PR #173087)

Mingming Liu via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 19 12:21:58 PST 2025


https://github.com/mingmingl-llvm updated https://github.com/llvm/llvm-project/pull/173087

>From 0f0281dfbbe0de70d8879ecfa6f59418dde11a2b Mon Sep 17 00:00:00 2001
From: mingmingl <mingmingl at google.com>
Date: Fri, 19 Dec 2025 10:39:31 -0800
Subject: [PATCH 1/4] [llvm-profdata][StaticDataLayout] Print summary of data
 access profile in llvm-profdata

---
 .../include/llvm/ProfileData/MemProfSummary.h | 14 ++++++++-
 llvm/lib/ProfileData/IndexedMemProfData.cpp   | 20 +++++++------
 llvm/lib/ProfileData/MemProfSummary.cpp       | 22 +++++++++++++-
 llvm/test/Transforms/PGOProfile/memprof.ll    |  2 +-
 .../memprof_max_cold_threshold.test           |  2 +-
 .../tools/llvm-profdata/memprof-yaml.test     | 30 ++++++++++++-------
 llvm/tools/llvm-profdata/llvm-profdata.cpp    |  3 ++
 7 files changed, 70 insertions(+), 23 deletions(-)

diff --git a/llvm/include/llvm/ProfileData/MemProfSummary.h b/llvm/include/llvm/ProfileData/MemProfSummary.h
index 8bf6155bd43e5..3f426ad48cf94 100644
--- a/llvm/include/llvm/ProfileData/MemProfSummary.h
+++ b/llvm/include/llvm/ProfileData/MemProfSummary.h
@@ -13,6 +13,7 @@
 #ifndef LLVM_PROFILEDATA_MEMPROFSUMMARY_H
 #define LLVM_PROFILEDATA_MEMPROFSUMMARY_H
 
+#include "llvm/ProfileData/DataAccessProf.h"
 #include "llvm/ProfileData/InstrProf.h"
 #include "llvm/Support/Compiler.h"
 
@@ -32,13 +33,20 @@ class MemProfSummary {
   const uint64_t NumContexts, NumColdContexts, NumHotContexts;
   const uint64_t MaxColdTotalSize, MaxWarmTotalSize, MaxHotTotalSize;
 
+  // MemProf v3 and prior versions don't have data access profile.
+  bool HasDataAccessProfile = false;
+  size_t NumHotSymbolsAndStringLiterals = 0;
+  size_t NumKnownColdSymbols = 0;
+  size_t NumKnownColdStringLiterals = 0;
+
 public:
   MemProfSummary(uint64_t NumContexts, uint64_t NumColdContexts,
                  uint64_t NumHotContexts, uint64_t MaxColdTotalSize,
                  uint64_t MaxWarmTotalSize, uint64_t MaxHotTotalSize)
       : NumContexts(NumContexts), NumColdContexts(NumColdContexts),
         NumHotContexts(NumHotContexts), MaxColdTotalSize(MaxColdTotalSize),
-        MaxWarmTotalSize(MaxWarmTotalSize), MaxHotTotalSize(MaxHotTotalSize) {}
+        MaxWarmTotalSize(MaxWarmTotalSize), MaxHotTotalSize(MaxHotTotalSize),
+        HasDataAccessProfile(false) {}
 
   static constexpr unsigned getNumSummaryFields() { return NumSummaryFields; }
   uint64_t getNumContexts() const { return NumContexts; }
@@ -53,6 +61,10 @@ class MemProfSummary {
   /// Read from indexed MemProf profile.
   LLVM_ABI static std::unique_ptr<MemProfSummary>
   deserialize(const unsigned char *&);
+  /// Build data access profile summary from \p DataAccessProfile.
+  /// The pointer is not owned.
+  LLVM_ABI void
+  buildDataAccessSummary(const DataAccessProfData &DataAccessProfile);
 };
 
 } // namespace memprof
diff --git a/llvm/lib/ProfileData/IndexedMemProfData.cpp b/llvm/lib/ProfileData/IndexedMemProfData.cpp
index 04ddae357ddd7..18b25eadc296a 100644
--- a/llvm/lib/ProfileData/IndexedMemProfData.cpp
+++ b/llvm/lib/ProfileData/IndexedMemProfData.cpp
@@ -407,8 +407,19 @@ Error IndexedMemProfReader::deserializeRadixTreeBased(
     DataAccessProfOffset =
         support::endian::readNext<uint64_t, llvm::endianness::little>(Ptr);
     MemProfSum = memprof::MemProfSummary::deserialize(Ptr);
+
+    if (DataAccessProfOffset > RecordTableOffset) {
+      DataAccessProfileData = std::make_unique<memprof::DataAccessProfData>();
+      const unsigned char *DAPPtr = Start + DataAccessProfOffset;
+      if (Error E = DataAccessProfileData->deserialize(DAPPtr))
+        return E;
+      MemProfSum->buildDataAccessSummary(*DataAccessProfileData);
+    }
   }
 
+  assert((!DataAccessProfOffset || DataAccessProfOffset > RecordTableOffset) &&
+         "Data access profile is either empty or after the record table");
+
   // Read the schema.
   auto SchemaOr = memprof::readMemProfSchema(Ptr);
   if (!SchemaOr)
@@ -430,15 +441,6 @@ Error IndexedMemProfReader::deserializeRadixTreeBased(
       /*Payload=*/Start + RecordPayloadOffset,
       /*Base=*/Start, memprof::RecordLookupTrait(Version, Schema)));
 
-  assert((!DataAccessProfOffset || DataAccessProfOffset > RecordTableOffset) &&
-         "Data access profile is either empty or after the record table");
-  if (DataAccessProfOffset > RecordTableOffset) {
-    DataAccessProfileData = std::make_unique<memprof::DataAccessProfData>();
-    const unsigned char *DAPPtr = Start + DataAccessProfOffset;
-    if (Error E = DataAccessProfileData->deserialize(DAPPtr))
-      return E;
-  }
-
   return Error::success();
 }
 
diff --git a/llvm/lib/ProfileData/MemProfSummary.cpp b/llvm/lib/ProfileData/MemProfSummary.cpp
index f620b7a74b244..285340b5ced38 100644
--- a/llvm/lib/ProfileData/MemProfSummary.cpp
+++ b/llvm/lib/ProfileData/MemProfSummary.cpp
@@ -18,13 +18,22 @@ using namespace llvm::memprof;
 void MemProfSummary::printSummaryYaml(raw_ostream &OS) const {
   // For now emit as YAML comments, since they aren't read on input.
   OS << "---\n";
-  OS << "# MemProfSummary:\n";
+  OS << "# MemProfHeapSummary:\n";
   OS << "#   Total contexts: " << NumContexts << "\n";
   OS << "#   Total cold contexts: " << NumColdContexts << "\n";
   OS << "#   Total hot contexts: " << NumHotContexts << "\n";
   OS << "#   Maximum cold context total size: " << MaxColdTotalSize << "\n";
   OS << "#   Maximum warm context total size: " << MaxWarmTotalSize << "\n";
   OS << "#   Maximum hot context total size: " << MaxHotTotalSize << "\n";
+  if (HasDataAccessProfile) {
+    OS << "#\n";
+    OS << "# DataAccessProfileSummary:\n";
+    OS << "#   Num hot symbols and string literals: "
+       << NumHotSymbolsAndStringLiterals << "\n";
+    OS << "#   Num known cold symbols: " << NumKnownColdSymbols << "\n";
+    OS << "#   Num known cold string literals: " << NumKnownColdStringLiterals
+       << "\n";
+  }
 }
 
 void MemProfSummary::write(ProfOStream &OS) const {
@@ -72,3 +81,14 @@ MemProfSummary::deserialize(const unsigned char *&Ptr) {
 
   return MemProfSum;
 }
+
+// FIXME: Consider to serialize the data access summary fields, ideally
+// batch this together with more substantial profile format change
+// and bump version once.
+void MemProfSummary::buildDataAccessSummary(
+    const DataAccessProfData &DataAccessProfile) {
+  HasDataAccessProfile = true;
+  NumHotSymbolsAndStringLiterals = DataAccessProfile.getRecords().size();
+  NumKnownColdSymbols = DataAccessProfile.getKnownColdSymbols().size();
+  NumKnownColdStringLiterals = DataAccessProfile.getKnownColdHashes().size();
+}
diff --git a/llvm/test/Transforms/PGOProfile/memprof.ll b/llvm/test/Transforms/PGOProfile/memprof.ll
index f6a89a8ceb86a..00175b2f3984c 100644
--- a/llvm/test/Transforms/PGOProfile/memprof.ll
+++ b/llvm/test/Transforms/PGOProfile/memprof.ll
@@ -23,7 +23,7 @@
 ;; Check that the summary can be shown (and is identical) for both the raw and indexed profiles.
 ; RUN: llvm-profdata show --memory %S/Inputs/memprof.memprofraw --profiled-binary %S/Inputs/memprof.exe | FileCheck %s --check-prefixes=SUMMARY
 ; RUN: llvm-profdata show --memory %t.memprofdata | FileCheck %s --check-prefixes=SUMMARY
-; SUMMARY: # MemProfSummary:
+; SUMMARY: # MemProfHeapSummary:
 ; SUMMARY: #   Total contexts: 8
 ; SUMMARY: #   Total cold contexts: 5
 ; SUMMARY: #   Total hot contexts: 0
diff --git a/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test b/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test
index 8f1cabf9a4e87..d1dcc86eac8e8 100644
--- a/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test
+++ b/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test
@@ -9,7 +9,7 @@
 ; RUN: llvm-profdata merge --memprof-version=4 %t/memprof_max_cold_threshold.yaml -o %t/memprof_max_cold_threshold.memprofdata
 
 ; RUN: llvm-profdata show --memory %t/memprof_max_cold_threshold.memprofdata | FileCheck %s --check-prefixes=SUMMARY
-; SUMMARY: # MemProfSummary:
+; SUMMARY: # MemProfHeapSummary:
 ; SUMMARY: #   Total contexts: 5
 ; SUMMARY: #   Total cold contexts: 4
 ; SUMMARY: #   Total hot contexts: 0
diff --git a/llvm/test/tools/llvm-profdata/memprof-yaml.test b/llvm/test/tools/llvm-profdata/memprof-yaml.test
index 6fbfbdb507f27..61722989c7bd1 100644
--- a/llvm/test/tools/llvm-profdata/memprof-yaml.test
+++ b/llvm/test/tools/llvm-profdata/memprof-yaml.test
@@ -37,13 +37,18 @@
 
 ;--- memprof-in.yaml
 ---
-# MemProfSummary:
+# MemProfHeapSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
 #   Maximum cold context total size: 0
 #   Maximum warm context total size: 666
 #   Maximum hot context total size: 0
+#
+# DataAccessProfileSummary:
+#   Num hot symbols and string literals: 2
+#   Num known cold symbols: 2
+#   Num known cold string literals: 2
 ---
 HeapProfileRecords:
   - GUID:            0xdeadbeef12345678
@@ -79,7 +84,7 @@ DataAccessProfiles:
       AccessCount:     100
       Locations:
       - FileName:      file2.h
-        Line:          123
+        Line:          202
       - FileName:      file3.cpp
         Line:          456
     - Hash:            101010
@@ -88,13 +93,13 @@ DataAccessProfiles:
         - FileName:        file.cpp
           Line:            233
   KnownColdSymbols:
-    - foo
     - bar
+    - foo
   KnownColdStrHashes: [ 999, 1001 ]
 ...
 ;--- memprof-in-v3.yaml
 ---
-# MemProfSummary:
+# MemProfHeapSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -131,7 +136,7 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-alloc-sites-only.yaml
 ---
-# MemProfSummary:
+# MemProfHeapSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -161,7 +166,7 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-call-sites-only.yaml
 ---
-# MemProfSummary:
+# MemProfHeapSummary:
 #   Total contexts: 0
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -183,7 +188,7 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-no-dap.yaml
 ---
-# MemProfSummary:
+# MemProfHeapSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -222,18 +227,23 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-no-heap.yaml
 ---
-# MemProfSummary:
+# MemProfHeapSummary:
 #   Total contexts: 0
 #   Total cold contexts: 0
 #   Total hot contexts: 0
 #   Maximum cold context total size: 0
 #   Maximum warm context total size: 0
 #   Maximum hot context total size: 0
+#
+# DataAccessProfileSummary:
+#   Num hot symbols and string literals: 2
+#   Num known cold symbols: 2
+#   Num known cold string literals: 2
 ---
 DataAccessProfiles:
   SampledRecords:
     - Symbol:          abcde
-      AccessCount:     100
+      AccessCount:     202
       Locations:
       - FileName:      file2.h
         Line:          123
@@ -245,7 +255,7 @@ DataAccessProfiles:
         - FileName:        file.cpp
           Line:            233
   KnownColdSymbols:
-    - foo
     - bar
+    - foo
   KnownColdStrHashes: [ 999, 1001 ]
 ...
diff --git a/llvm/tools/llvm-profdata/llvm-profdata.cpp b/llvm/tools/llvm-profdata/llvm-profdata.cpp
index e186c5a198027..5db7ef1b4ad30 100644
--- a/llvm/tools/llvm-profdata/llvm-profdata.cpp
+++ b/llvm/tools/llvm-profdata/llvm-profdata.cpp
@@ -3323,6 +3323,9 @@ static int showMemProfProfile(ShowFormat SFormat, raw_fd_ostream &OS) {
   // be accessed from the reader. Earlier versions build the summary below.
   // The summary is emitted as YAML comments at the start of the output.
   if (auto *MemProfSum = Reader->getMemProfSummary()) {
+    // errs() << "llvm-profdata.cpp find memprof summary\n";
+    // fflush(stdout);
+    // fflush(stderr);
     MemProfSum->printSummaryYaml(OS);
   } else {
     memprof::MemProfSummaryBuilder MemProfSumBuilder;

>From 175504d89ed4551928aefd3c259ad3944e70fb75 Mon Sep 17 00:00:00 2001
From: mingmingl <mingmingl at google.com>
Date: Fri, 19 Dec 2025 11:20:29 -0800
Subject: [PATCH 2/4] excessive logs

---
 llvm/tools/llvm-profdata/llvm-profdata.cpp | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/llvm/tools/llvm-profdata/llvm-profdata.cpp b/llvm/tools/llvm-profdata/llvm-profdata.cpp
index 5db7ef1b4ad30..e186c5a198027 100644
--- a/llvm/tools/llvm-profdata/llvm-profdata.cpp
+++ b/llvm/tools/llvm-profdata/llvm-profdata.cpp
@@ -3323,9 +3323,6 @@ static int showMemProfProfile(ShowFormat SFormat, raw_fd_ostream &OS) {
   // be accessed from the reader. Earlier versions build the summary below.
   // The summary is emitted as YAML comments at the start of the output.
   if (auto *MemProfSum = Reader->getMemProfSummary()) {
-    // errs() << "llvm-profdata.cpp find memprof summary\n";
-    // fflush(stdout);
-    // fflush(stderr);
     MemProfSum->printSummaryYaml(OS);
   } else {
     memprof::MemProfSummaryBuilder MemProfSumBuilder;

>From fe5c2447f2f8bd775bb8fb09bf88424b8331b842 Mon Sep 17 00:00:00 2001
From: mingmingl <mingmingl at google.com>
Date: Fri, 19 Dec 2025 11:30:12 -0800
Subject: [PATCH 3/4] undo irrelevant test data change

---
 llvm/test/tools/llvm-profdata/memprof-yaml.test | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/llvm/test/tools/llvm-profdata/memprof-yaml.test b/llvm/test/tools/llvm-profdata/memprof-yaml.test
index 61722989c7bd1..de7cb65067d2f 100644
--- a/llvm/test/tools/llvm-profdata/memprof-yaml.test
+++ b/llvm/test/tools/llvm-profdata/memprof-yaml.test
@@ -84,7 +84,7 @@ DataAccessProfiles:
       AccessCount:     100
       Locations:
       - FileName:      file2.h
-        Line:          202
+        Line:          123
       - FileName:      file3.cpp
         Line:          456
     - Hash:            101010
@@ -93,8 +93,8 @@ DataAccessProfiles:
         - FileName:        file.cpp
           Line:            233
   KnownColdSymbols:
-    - bar
     - foo
+    - bar
   KnownColdStrHashes: [ 999, 1001 ]
 ...
 ;--- memprof-in-v3.yaml
@@ -243,7 +243,7 @@ HeapProfileRecords:
 DataAccessProfiles:
   SampledRecords:
     - Symbol:          abcde
-      AccessCount:     202
+      AccessCount:     100
       Locations:
       - FileName:      file2.h
         Line:          123
@@ -255,7 +255,7 @@ DataAccessProfiles:
         - FileName:        file.cpp
           Line:            233
   KnownColdSymbols:
-    - bar
     - foo
+    - bar
   KnownColdStrHashes: [ 999, 1001 ]
 ...

>From 46445c5f5d87f99579240ca8b30a9f7341f37e1f Mon Sep 17 00:00:00 2001
From: mingmingl <mingmingl at google.com>
Date: Fri, 19 Dec 2025 12:21:15 -0800
Subject: [PATCH 4/4] resolve code review feedback

---
 llvm/include/llvm/ProfileData/MemProfSummary.h   |  3 ++-
 llvm/lib/ProfileData/MemProfSummary.cpp          | 10 ++++------
 llvm/test/Transforms/PGOProfile/memprof.ll       |  2 +-
 .../PGOProfile/memprof_max_cold_threshold.test   |  2 +-
 llvm/test/tools/llvm-profdata/memprof-yaml.test  | 16 ++++++----------
 5 files changed, 14 insertions(+), 19 deletions(-)

diff --git a/llvm/include/llvm/ProfileData/MemProfSummary.h b/llvm/include/llvm/ProfileData/MemProfSummary.h
index 3f426ad48cf94..b06824763c164 100644
--- a/llvm/include/llvm/ProfileData/MemProfSummary.h
+++ b/llvm/include/llvm/ProfileData/MemProfSummary.h
@@ -33,7 +33,8 @@ class MemProfSummary {
   const uint64_t NumContexts, NumColdContexts, NumHotContexts;
   const uint64_t MaxColdTotalSize, MaxWarmTotalSize, MaxHotTotalSize;
 
-  // MemProf v3 and prior versions don't have data access profile.
+  // MemProf v3 and prior versions don't have data access profile,
+  // so record the data access profile state.
   bool HasDataAccessProfile = false;
   size_t NumHotSymbolsAndStringLiterals = 0;
   size_t NumKnownColdSymbols = 0;
diff --git a/llvm/lib/ProfileData/MemProfSummary.cpp b/llvm/lib/ProfileData/MemProfSummary.cpp
index 285340b5ced38..1690745debf54 100644
--- a/llvm/lib/ProfileData/MemProfSummary.cpp
+++ b/llvm/lib/ProfileData/MemProfSummary.cpp
@@ -18,7 +18,7 @@ using namespace llvm::memprof;
 void MemProfSummary::printSummaryYaml(raw_ostream &OS) const {
   // For now emit as YAML comments, since they aren't read on input.
   OS << "---\n";
-  OS << "# MemProfHeapSummary:\n";
+  OS << "# MemProfSummary:\n";
   OS << "#   Total contexts: " << NumContexts << "\n";
   OS << "#   Total cold contexts: " << NumColdContexts << "\n";
   OS << "#   Total hot contexts: " << NumHotContexts << "\n";
@@ -26,12 +26,10 @@ void MemProfSummary::printSummaryYaml(raw_ostream &OS) const {
   OS << "#   Maximum warm context total size: " << MaxWarmTotalSize << "\n";
   OS << "#   Maximum hot context total size: " << MaxHotTotalSize << "\n";
   if (HasDataAccessProfile) {
-    OS << "#\n";
-    OS << "# DataAccessProfileSummary:\n";
-    OS << "#   Num hot symbols and string literals: "
+    OS << "# Num hot symbols and string literals: "
        << NumHotSymbolsAndStringLiterals << "\n";
-    OS << "#   Num known cold symbols: " << NumKnownColdSymbols << "\n";
-    OS << "#   Num known cold string literals: " << NumKnownColdStringLiterals
+    OS << "# Num known cold symbols: " << NumKnownColdSymbols << "\n";
+    OS << "# Num known cold string literals: " << NumKnownColdStringLiterals
        << "\n";
   }
 }
diff --git a/llvm/test/Transforms/PGOProfile/memprof.ll b/llvm/test/Transforms/PGOProfile/memprof.ll
index 00175b2f3984c..f6a89a8ceb86a 100644
--- a/llvm/test/Transforms/PGOProfile/memprof.ll
+++ b/llvm/test/Transforms/PGOProfile/memprof.ll
@@ -23,7 +23,7 @@
 ;; Check that the summary can be shown (and is identical) for both the raw and indexed profiles.
 ; RUN: llvm-profdata show --memory %S/Inputs/memprof.memprofraw --profiled-binary %S/Inputs/memprof.exe | FileCheck %s --check-prefixes=SUMMARY
 ; RUN: llvm-profdata show --memory %t.memprofdata | FileCheck %s --check-prefixes=SUMMARY
-; SUMMARY: # MemProfHeapSummary:
+; SUMMARY: # MemProfSummary:
 ; SUMMARY: #   Total contexts: 8
 ; SUMMARY: #   Total cold contexts: 5
 ; SUMMARY: #   Total hot contexts: 0
diff --git a/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test b/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test
index d1dcc86eac8e8..8f1cabf9a4e87 100644
--- a/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test
+++ b/llvm/test/Transforms/PGOProfile/memprof_max_cold_threshold.test
@@ -9,7 +9,7 @@
 ; RUN: llvm-profdata merge --memprof-version=4 %t/memprof_max_cold_threshold.yaml -o %t/memprof_max_cold_threshold.memprofdata
 
 ; RUN: llvm-profdata show --memory %t/memprof_max_cold_threshold.memprofdata | FileCheck %s --check-prefixes=SUMMARY
-; SUMMARY: # MemProfHeapSummary:
+; SUMMARY: # MemProfSummary:
 ; SUMMARY: #   Total contexts: 5
 ; SUMMARY: #   Total cold contexts: 4
 ; SUMMARY: #   Total hot contexts: 0
diff --git a/llvm/test/tools/llvm-profdata/memprof-yaml.test b/llvm/test/tools/llvm-profdata/memprof-yaml.test
index de7cb65067d2f..f64c329b478fb 100644
--- a/llvm/test/tools/llvm-profdata/memprof-yaml.test
+++ b/llvm/test/tools/llvm-profdata/memprof-yaml.test
@@ -37,15 +37,13 @@
 
 ;--- memprof-in.yaml
 ---
-# MemProfHeapSummary:
+# MemProfSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
 #   Maximum cold context total size: 0
 #   Maximum warm context total size: 666
 #   Maximum hot context total size: 0
-#
-# DataAccessProfileSummary:
 #   Num hot symbols and string literals: 2
 #   Num known cold symbols: 2
 #   Num known cold string literals: 2
@@ -99,7 +97,7 @@ DataAccessProfiles:
 ...
 ;--- memprof-in-v3.yaml
 ---
-# MemProfHeapSummary:
+# MemProfSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -136,7 +134,7 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-alloc-sites-only.yaml
 ---
-# MemProfHeapSummary:
+# MemProfSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -166,7 +164,7 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-call-sites-only.yaml
 ---
-# MemProfHeapSummary:
+# MemProfSummary:
 #   Total contexts: 0
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -188,7 +186,7 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-no-dap.yaml
 ---
-# MemProfHeapSummary:
+# MemProfSummary:
 #   Total contexts: 2
 #   Total cold contexts: 0
 #   Total hot contexts: 0
@@ -227,15 +225,13 @@ HeapProfileRecords:
 ...
 ;--- memprof-in-no-heap.yaml
 ---
-# MemProfHeapSummary:
+# MemProfSummary:
 #   Total contexts: 0
 #   Total cold contexts: 0
 #   Total hot contexts: 0
 #   Maximum cold context total size: 0
 #   Maximum warm context total size: 0
 #   Maximum hot context total size: 0
-#
-# DataAccessProfileSummary:
 #   Num hot symbols and string literals: 2
 #   Num known cold symbols: 2
 #   Num known cold string literals: 2



More information about the llvm-commits mailing list