Skip to content

Commit 7bee39f

Browse files
committed
Migrated ClangLinkerWrapper.cpp to the new LLVMTargetMachine code emission API.
1 parent 00be9bf commit 7bee39f

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
#include "llvm/BinaryFormat/Magic.h"
2121
#include "llvm/Bitcode/BitcodeWriter.h"
2222
#include "llvm/CodeGen/CommandFlags.h"
23+
#include "llvm/CodeGen/MachineModuleInfo.h"
2324
#include "llvm/Frontend/Offloading/OffloadWrapper.h"
2425
#include "llvm/Frontend/Offloading/Utility.h"
2526
#include "llvm/IR/Constants.h"
@@ -1031,9 +1032,9 @@ Expected<StringRef> compileModule(Module &M, OffloadKind Kind) {
10311032
codegen::InitTargetOptionsFromCodeGenFlags(Triple(M.getTargetTriple()));
10321033
StringRef CPU = "";
10331034
StringRef Features = "";
1034-
std::unique_ptr<TargetMachine> TM(
1035+
std::unique_ptr<LLVMTargetMachine> TM(static_cast<LLVMTargetMachine *>(
10351036
T->createTargetMachine(M.getTargetTriple(), CPU, Features, Options,
1036-
Reloc::PIC_, M.getCodeModel()));
1037+
Reloc::PIC_, M.getCodeModel())));
10371038

10381039
if (M.getDataLayout().isDefault())
10391040
M.setDataLayout(TM->createDataLayout());
@@ -1051,9 +1052,10 @@ Expected<StringRef> compileModule(Module &M, OffloadKind Kind) {
10511052
auto OS = std::make_unique<llvm::raw_fd_ostream>(FD, true);
10521053

10531054
legacy::PassManager CodeGenPasses;
1055+
MachineModuleInfo MMI(TM.get());
10541056
TargetLibraryInfoImpl TLII(Triple(M.getTargetTriple()));
10551057
CodeGenPasses.add(new TargetLibraryInfoWrapperPass(TLII));
1056-
if (TM->addPassesToEmitFile(CodeGenPasses, *OS, nullptr,
1058+
if (TM->addPassesToEmitFile(CodeGenPasses, MMI, *OS, nullptr,
10571059
CodeGenFileType::ObjectFile))
10581060
return createStringError("Failed to execute host backend");
10591061
CodeGenPasses.run(M);

0 commit comments

Comments
 (0)