From 255d6c9fe5a7577c6caf78004034f2555bd0cba0 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Mon, 4 Jul 2022 21:20:19 +0200 Subject: Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15-init-15358-g53dc0f10787. PR: 265425 MFC after: 2 weeks (cherry picked from commit 81ad626541db97eb356e2c1d4a20eb2a26a766ab) --- contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp') diff --git a/contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp b/contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp index f6642a79e1e4..8e97a298ce7f 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp @@ -134,7 +134,14 @@ namespace { llvm::LLVMContext &C) { assert(!M && "Replacing existing Module?"); M.reset(new llvm::Module(ExpandModuleName(ModuleName, CodeGenOpts), C)); + + std::unique_ptr OldBuilder = std::move(Builder); + Initialize(*Ctx); + + if (OldBuilder) + OldBuilder->moveLazyEmissionStates(Builder.get()); + return M.get(); } @@ -146,6 +153,11 @@ namespace { const auto &SDKVersion = Ctx->getTargetInfo().getSDKVersion(); if (!SDKVersion.empty()) M->setSDKVersion(SDKVersion); + if (const auto *TVT = Ctx->getTargetInfo().getDarwinTargetVariantTriple()) + M->setDarwinTargetVariantTriple(TVT->getTriple()); + if (auto TVSDKVersion = + Ctx->getTargetInfo().getDarwinTargetVariantSDKVersion()) + M->setDarwinTargetVariantSDKVersion(*TVSDKVersion); Builder.reset(new CodeGen::CodeGenModule(Context, HeaderSearchOpts, PreprocessorOpts, CodeGenOpts, *M, Diags, CoverageInfo)); -- cgit v1.2.3