[llvm] [memprof] Simplify code with MapVector::operator[] (NFC) (PR #111335)

via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 6 21:16:03 PDT 2024


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-pgo

Author: Kazu Hirata (kazutakahirata)

<details>
<summary>Changes</summary>

Note that the following are all equivalent to each other:

  Map.insert({Key, Value()}).first->second
  Map.try_emplace(Key).first->second
  Map[Key]


---
Full diff: https://github.com/llvm/llvm-project/pull/111335.diff


1 Files Affected:

- (modified) llvm/lib/ProfileData/MemProfReader.cpp (+2-5) 


``````````diff
diff --git a/llvm/lib/ProfileData/MemProfReader.cpp b/llvm/lib/ProfileData/MemProfReader.cpp
index 58622e5ed254ea..e3c85e179ac43b 100644
--- a/llvm/lib/ProfileData/MemProfReader.cpp
+++ b/llvm/lib/ProfileData/MemProfReader.cpp
@@ -529,9 +529,7 @@ Error RawMemProfReader::mapRawProfileToRecords() {
     // first non-inline frame.
     for (size_t I = 0; /*Break out using the condition below*/; I++) {
       const Frame &F = idToFrame(Callstack[I]);
-      auto Result =
-          FunctionProfileData.insert({F.Function, IndexedMemProfRecord()});
-      IndexedMemProfRecord &Record = Result.first->second;
+      IndexedMemProfRecord &Record = FunctionProfileData[F.Function];
       Record.AllocSites.emplace_back(Callstack, CSId, MIB);
 
       if (!F.IsInlineFrame)
@@ -543,8 +541,7 @@ Error RawMemProfReader::mapRawProfileToRecords() {
   for (const auto &[Id, Locs] : PerFunctionCallSites) {
     // Some functions may have only callsite data and no allocation data. Here
     // we insert a new entry for callsite data if we need to.
-    auto Result = FunctionProfileData.insert({Id, IndexedMemProfRecord()});
-    IndexedMemProfRecord &Record = Result.first->second;
+    IndexedMemProfRecord &Record = FunctionProfileData[Id];
     for (LocationPtr Loc : Locs) {
       CallStackId CSId = hashCallStack(*Loc);
       CSIdToCallStack.insert({CSId, *Loc});

``````````

</details>


https://github.com/llvm/llvm-project/pull/111335


More information about the llvm-commits mailing list