diff options
author | Giulio Eulisse <10544+ktf@users.noreply.github.com> | 2023-09-30 07:26:19 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-30 08:26:19 +0300 |
commit | 4ae51570806ba5c5fcabe6d6dcbe52e3a5d5453b (patch) | |
tree | 67571498f3e0af7ec4815ed7d5fe2e2a25ca8234 /clang/lib/Basic/SourceManager.cpp | |
parent | abcaebfe3aacb13d46be5e949fd6ed9b4321e2f6 (diff) | |
download | llvm-4ae51570806ba5c5fcabe6d6dcbe52e3a5d5453b.zip llvm-4ae51570806ba5c5fcabe6d6dcbe52e3a5d5453b.tar.gz llvm-4ae51570806ba5c5fcabe6d6dcbe52e3a5d5453b.tar.bz2 |
Introduce paged vector (#66430)
The goal of the class is to be an (almost) drop in replacement for
SmallVector and std::vector when those are presized and filled later, as
it happens in SourceManager and ASTReader.
By doing so, sparsely accessed PagedVector can profit from reduced
memory footprint.
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
-rw-r--r-- | clang/lib/Basic/SourceManager.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/clang/lib/Basic/SourceManager.cpp b/clang/lib/Basic/SourceManager.cpp index f1a81de..3066cc5 100644 --- a/clang/lib/Basic/SourceManager.cpp +++ b/clang/lib/Basic/SourceManager.cpp @@ -2343,11 +2343,11 @@ SourceManager::MemoryBufferSizes SourceManager::getMemoryBufferSizes() const { } size_t SourceManager::getDataStructureSizes() const { - size_t size = llvm::capacity_in_bytes(MemBufferInfos) - + llvm::capacity_in_bytes(LocalSLocEntryTable) - + llvm::capacity_in_bytes(LoadedSLocEntryTable) - + llvm::capacity_in_bytes(SLocEntryLoaded) - + llvm::capacity_in_bytes(FileInfos); + size_t size = llvm::capacity_in_bytes(MemBufferInfos) + + llvm::capacity_in_bytes(LocalSLocEntryTable) + + llvm::capacity_in_bytes(LoadedSLocEntryTable) + + llvm::capacity_in_bytes(SLocEntryLoaded) + + llvm::capacity_in_bytes(FileInfos); if (OverriddenFilesInfo) size += llvm::capacity_in_bytes(OverriddenFilesInfo->OverriddenFiles); |