[LLVMSymbolize] Simplify SymbolizableObjectFile::symbolizeInlinedCode(). NFC.

llvm-svn: 251672
diff --git a/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp b/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
index fb2873e..d3a54ca 100644
--- a/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
+++ b/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
@@ -217,26 +217,18 @@
   if (InlinedContext.getNumberOfFrames() == 0)
     InlinedContext.addFrame(DILineInfo());
 
-  if (FNKind != FunctionNameKind::LinkageName || !UseSymbolTable)
-    return InlinedContext;
-
   // Override the function name in lower frame with name from symbol table.
-  // We can't directly change the last element of DIInliningInfo, so copy
-  // all frames into new context, replacing function name in the last one.
-  DIInliningInfo PatchedInlinedContext;
-  for (uint32_t i = 0, n = InlinedContext.getNumberOfFrames(); i < n; i++) {
-    DILineInfo LineInfo = InlinedContext.getFrame(i);
-    if (i == n - 1) {
-      std::string FunctionName;
-      uint64_t Start, Size;
-      if (getNameFromSymbolTable(SymbolRef::ST_Function, ModuleOffset,
-                                 FunctionName, Start, Size)) {
-        LineInfo.FunctionName = FunctionName;
-      }
+  if (FNKind == FunctionNameKind::LinkageName && UseSymbolTable) {
+    std::string FunctionName;
+    uint64_t Start, Size;
+    if (getNameFromSymbolTable(SymbolRef::ST_Function, ModuleOffset,
+                               FunctionName, Start, Size)) {
+      InlinedContext.getMutableFrame(InlinedContext.getNumberOfFrames() - 1)
+          ->FunctionName = FunctionName;
     }
-    PatchedInlinedContext.addFrame(LineInfo);
   }
-  return PatchedInlinedContext;
+
+  return InlinedContext;
 }
 
 DIGlobal SymbolizableObjectFile::symbolizeData(uint64_t ModuleOffset) const {