From 6773d388aadf0c8588e3cda343ab621397fde38c Mon Sep 17 00:00:00 2001 From: Owen Anderson Date: Wed, 1 Jul 2009 16:58:40 +0000 Subject: Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools. Patches for Clang and LLVM-GCC to follow. llvm-svn: 74614 --- llvm/lib/AsmParser/Parser.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'llvm/lib/AsmParser/Parser.cpp') diff --git a/llvm/lib/AsmParser/Parser.cpp b/llvm/lib/AsmParser/Parser.cpp index 759e00e3217..7759c70d73d 100644 --- a/llvm/lib/AsmParser/Parser.cpp +++ b/llvm/lib/AsmParser/Parser.cpp @@ -20,7 +20,8 @@ #include using namespace llvm; -Module *llvm::ParseAssemblyFile(const std::string &Filename, ParseError &Err) { +Module *llvm::ParseAssemblyFile(const std::string &Filename, ParseError &Err, + LLVMContext* Context) { Err.setFilename(Filename); std::string ErrorStr; @@ -31,14 +32,14 @@ Module *llvm::ParseAssemblyFile(const std::string &Filename, ParseError &Err) { return 0; } - OwningPtr M(new Module(Filename)); + OwningPtr M(new Module(Filename, Context)); if (LLParser(F.get(), Err, M.get()).Run()) return 0; return M.take(); } Module *llvm::ParseAssemblyString(const char *AsmString, Module *M, - ParseError &Err) { + ParseError &Err, LLVMContext* Context) { Err.setFilename(""); OwningPtr @@ -50,7 +51,7 @@ Module *llvm::ParseAssemblyString(const char *AsmString, Module *M, return LLParser(F.get(), Err, M).Run() ? 0 : M; // Otherwise create a new module. - OwningPtr M2(new Module("")); + OwningPtr M2(new Module("", Context)); if (LLParser(F.get(), Err, M2.get()).Run()) return 0; return M2.take(); -- cgit v1.2.3