clang_getCXTUResourceUsage: Report memory used by data structures in SourceManager.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136189 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Basic/SourceManager.cpp b/lib/Basic/SourceManager.cpp
index f2903e9..68c58f7 100644
--- a/lib/Basic/SourceManager.cpp
+++ b/lib/Basic/SourceManager.cpp
@@ -1598,3 +1598,11 @@
   return MemoryBufferSizes(malloc_bytes, mmap_bytes);
 }
 
+size_t SourceManager::getDataStructureSizes() const {
+  return MemBufferInfos.capacity()
+    + LocalSLocEntryTable.capacity()
+    + LoadedSLocEntryTable.capacity()
+    + SLocEntryLoaded.capacity()
+    + FileInfos.getMemorySize()
+    + OverriddenFiles.getMemorySize();
+}