llvm-project/clang/tools/libclang
Chandler Carruth e24605bbcd [cleanup] Stop specifying size overrides for BumpPtrAllocators.
These don't seem to have any real point. Let's start with
IndexingContext. I can't come up with any conceivable reason to have
many hundereds of thousands of these alive in an address space which
would make the 4x difference in allocated (but unused) memory for the
string scratch buffer a significant memory usage problem.

The EditedSource one is somewhat more surprising. This is an 8x increase
in the memory allocated (but not used) per editted source file. However,
for this to realistically be a problem, you would need to have over half
a million editted source files in a single address space, and even that
would only really have problems on 32-bit Windows where you really only
have 2gb of virtual address space. And what's more important, the fix to
this if it is actually an issue shouldn't be to shrink the allocator's
size, it is to pass a single allocator into *many* edited source file
objects and let them share the memory.

These were the only two uses of custom sized BumpPtrAllocators
(excluding ones in the JIT using a custom allocation strategy) in all of
LLVM, Clang, LLD, LLDB, or Polly. I don't think we actually need this
complexity in the primary BumpPtrAllocator at all and am planning to
remove it.

llvm-svn: 204910
2014-03-27 10:45:22 +00:00
..
ARCMigrate.cpp Replace OwningPtr with std::unique_ptr. 2014-03-07 20:03:18 +00:00
BuildSystem.cpp [libclang] Introduce clang_VirtualFileOverlay_setCaseSensitivity that exposes the VFS option 2014-03-20 04:51:48 +00:00
CIndex.cpp [OPENMP] parsing of clause 'safelen' (for directive 'omp simd') 2014-03-21 04:51:18 +00:00
CIndexCXX.cpp [libclang] Have clang_getCXXAccessSpecifier() also return the access control of a C++ declaration within its parent scope. 2013-04-11 17:02:10 +00:00
CIndexCodeCompletion.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-15 07:47:46 +00:00
CIndexDiagnostic.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-15 07:47:46 +00:00
CIndexDiagnostic.h [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-15 07:47:46 +00:00
CIndexHigh.cpp Fix a typo in the function name that I just introduced (r201155) 2014-02-11 15:02:48 +00:00
CIndexInclusionStack.cpp Fix a typo in the function name that I just introduced (r201155) 2014-02-11 15:02:48 +00:00
CIndexUSRs.cpp Remove more uses of 'index' as namespace scope. 2013-08-21 01:51:19 +00:00
CIndexer.cpp libclang: Remove clang::RemapFiles, it's dead code. 2013-06-13 13:57:48 +00:00
CIndexer.h libclang: Remove clang::RemapFiles, it's dead code. 2013-06-13 13:57:48 +00:00
CLog.h [cleanup] Re-sort includes with llvm/utils/sort_includes.py and fix 2014-03-04 10:05:20 +00:00
CMakeLists.txt Now that llvm's build system sets -install_name, we don't need to. 2014-02-28 13:50:15 +00:00
CXComment.cpp Work around a bug in old gcc on the FreeBSD bot, which complains about 2013-11-14 00:36:24 +00:00
CXComment.h Make inline functions in a header file static. 2013-11-13 20:19:22 +00:00
CXCompilationDatabase.cpp Tooling: Move heavyweight vectors around instead of copying. 2014-03-20 12:48:36 +00:00
CXCursor.cpp [OPENMP] First changes for Parsing and Sema for 'omp simd' directive support 2014-02-27 08:29:12 +00:00
CXCursor.h libclang: make getCursorParentDecl() return 'const Decl *' 2013-01-26 18:12:08 +00:00
CXLoadedDiagnostic.cpp Replace OwningPtr with std::unique_ptr. 2014-03-07 20:03:18 +00:00
CXLoadedDiagnostic.h [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-15 07:47:46 +00:00
CXSourceLocation.cpp Fix a typo in the function name that I just introduced (r201155) 2014-02-11 15:02:48 +00:00
CXSourceLocation.h [libclang] Add some constness in CXSourceLocation and CXSourceRange. 2013-01-11 22:29:47 +00:00
CXStoredDiagnostic.cpp Add 'remark' diagnostic type in 'clang' 2014-02-28 09:11:08 +00:00
CXString.cpp libclang: wrap CXString implementation into 'namespace cxstring' 2013-02-03 13:54:26 +00:00
CXString.h Sort all the #include lines with LLVM's utils/sort_includes.py which 2014-01-07 11:51:46 +00:00
CXTranslationUnit.h [cleanup] Re-sort includes with llvm/utils/sort_includes.py and fix 2014-03-04 10:05:20 +00:00
CXType.cpp [C++11] Replacing RecordDecl iterators field_begin() and field_end() with iterator_range fields(). Updating all of the usages of the iterators with range-based for loops. 2014-03-08 20:12:42 +00:00
CXType.h Change CXTranslationUnit to not directly cast to an ASTUnit*, 2010-11-16 08:15:36 +00:00
CursorVisitor.h [libclang] Modify clang_findReferencesInFile and clang_findIncludesInFile to return a value. 2013-03-08 20:42:33 +00:00
IndexBody.cpp Move tools/libclang/RecursiveASTVisitor.h -> include/clang/AST/DataRecursiveASTVisitor.h 2013-12-20 02:02:54 +00:00
IndexDecl.cpp [C++11] Replacing ObjCImplementationDecl iterators ivar_begin() and ivar_end() with iterator_range ivars(). Updating all of the usages of the iterators with range-based for loops. 2014-03-14 15:16:45 +00:00
IndexTypeSourceInfo.cpp Move tools/libclang/RecursiveASTVisitor.h -> include/clang/AST/DataRecursiveASTVisitor.h 2013-12-20 02:02:54 +00:00
Index_Internal.h [libclang] Move CursorVisitor to its own header. 2011-11-03 19:02:34 +00:00
Indexing.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-15 07:47:46 +00:00
IndexingContext.cpp [C++11] Replacing CXXRecordDecl iterators bases_begin() and bases_end() with iterator_range bases(). Updating all of the usages of the iterators with range-based for loops. 2014-03-13 15:41:46 +00:00
IndexingContext.h [cleanup] Stop specifying size overrides for BumpPtrAllocators. 2014-03-27 10:45:22 +00:00
Makefile Now that llvm's build system sets -install_name, we don't need to. 2014-02-28 13:50:15 +00:00
libclang.exports [libclang] Introduce clang_VirtualFileOverlay_setCaseSensitivity that exposes the VFS option 2014-03-20 04:51:48 +00:00