From bdabc2f19ffb9e20600dad6e8a300842a7bda50e Mon Sep 17 00:00:00 2001 From: patrick Date: Fri, 6 Apr 2018 14:26:03 +0000 Subject: Import LLVM 6.0.1 release including clang, lld and lldb. "where is the kaboom?" deraadt@ --- gnu/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gnu/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp') diff --git a/gnu/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp b/gnu/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp index fc642850d60..8aa9bfb421b 100644 --- a/gnu/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp +++ b/gnu/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp @@ -119,6 +119,14 @@ namespace { return Builder->GetAddrOfGlobal(global, ForDefinition_t(isForDefinition)); } + llvm::Module *StartModule(llvm::StringRef ModuleName, + llvm::LLVMContext &C) { + assert(!M && "Replacing existing Module?"); + M.reset(new llvm::Module(ModuleName, C)); + Initialize(*Ctx); + return M.get(); + } + void Initialize(ASTContext &Context) override { Ctx = &Context; @@ -317,6 +325,11 @@ llvm::Constant *CodeGenerator::GetAddrOfGlobal(GlobalDecl global, ->GetAddrOfGlobal(global, isForDefinition); } +llvm::Module *CodeGenerator::StartModule(llvm::StringRef ModuleName, + llvm::LLVMContext &C) { + return static_cast(this)->StartModule(ModuleName, C); +} + CodeGenerator *clang::CreateLLVMCodeGen( DiagnosticsEngine &Diags, llvm::StringRef ModuleName, const HeaderSearchOptions &HeaderSearchOpts, -- cgit v1.2.3-59-g8ed1b