diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-10-17 00:34:24 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-10-17 00:34:24 +0000 |
commit | 8bcb1c68832c8897bf85b8346098bbb8099f3b94 (patch) | |
tree | 1ffb9fe30776c982131852ca27ec88e00e8f0d9b /clang/lib/Frontend/ASTUnit.cpp | |
parent | 0d3d9ee03e6d2746409bc26921ff743d65d2fc4f (diff) | |
download | bcm5719-llvm-8bcb1c68832c8897bf85b8346098bbb8099f3b94.tar.gz bcm5719-llvm-8bcb1c68832c8897bf85b8346098bbb8099f3b94.zip |
Add 'UseBumpPtrAllocator' flag to ASTUnit::LoadFromPCHFile() to cause the created ASTContext to use
its own BumpPtrAllocator to allocate ASTs.
Change clang_createTranslationUnit (CIndex) to pass 'UseBumpPtrAllocator = true' to
ASTUnit::LoadFromPCHFile().
llvm-svn: 84296
Diffstat (limited to 'clang/lib/Frontend/ASTUnit.cpp')
-rw-r--r-- | clang/lib/Frontend/ASTUnit.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp index 15002385a8c..7ee66486998 100644 --- a/clang/lib/Frontend/ASTUnit.cpp +++ b/clang/lib/Frontend/ASTUnit.cpp @@ -95,7 +95,8 @@ ASTUnit *ASTUnit::LoadFromPCHFile(const std::string &Filename, Diagnostic &Diags, FileManager &FileMgr, std::string *ErrMsg, - bool OnlyLocalDecls) { + bool OnlyLocalDecls, + bool UseBumpAllocator) { llvm::OwningPtr<ASTUnit> AST(new ASTUnit(Diags)); AST->OnlyLocalDecls = OnlyLocalDecls; AST->HeaderInfo.reset(new HeaderSearch(FileMgr)); @@ -146,7 +147,7 @@ ASTUnit *ASTUnit::LoadFromPCHFile(const std::string &Filename, PP.getIdentifierTable(), PP.getSelectorTable(), PP.getBuiltinInfo(), - /* FreeMemory = */ true, + /* FreeMemory = */ !UseBumpAllocator, /* size_reserve = */0)); ASTContext &Context = *AST->Ctx.get(); |