Debug Info: don't bother reinserting elements into maps we just retrieved them from
(no intended behavior change)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182403 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CGDebugInfo.cpp b/lib/CodeGen/CGDebugInfo.cpp
index 8a6448a..726f736 100644
--- a/lib/CodeGen/CGDebugInfo.cpp
+++ b/lib/CodeGen/CGDebugInfo.cpp
@@ -1936,16 +1936,17 @@
::iterator it = ObjCInterfaceCache.find(TyPtr);
if (it != ObjCInterfaceCache.end())
TC = llvm::DIType(cast<llvm::MDNode>(it->second.first));
- else
+ else {
TC = DBuilder.createForwardDecl(llvm::dwarf::DW_TAG_structure_type,
Decl->getName(), TheCU, Unit,
getLineNumber(Decl->getLocation()),
TheCU.getLanguage());
- // Store the forward declaration in the cache.
- ObjCInterfaceCache[TyPtr] = std::make_pair(TC, Checksum(Decl));
+ // Store the forward declaration in the cache.
+ ObjCInterfaceCache[TyPtr] = std::make_pair(TC, Checksum(Decl));
- // Register the type for replacement in finalize().
- ReplaceMap.push_back(std::make_pair(TyPtr, static_cast<llvm::Value*>(TC)));
+ // Register the type for replacement in finalize().
+ ReplaceMap.push_back(std::make_pair(TyPtr, static_cast<llvm::Value*>(TC)));
+ }
return TC;
}