Skip to content

Commit c74a50f

Browse files
committed
Wrap TargetMachine by std::unique_ptr
1 parent f8bd622 commit c74a50f

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

llvm/unittests/MIR/PassBuilderCallbacksTest.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ class MachineFunctionCallbacksTest : public testing::Test {
301301
InitializeAllTargetMCs();
302302
}
303303

304-
TargetMachine *TM;
304+
std::unique_ptr<LLVMTargetMachine> TM;
305305

306306
LLVMContext Context;
307307
std::unique_ptr<Module> M;
@@ -354,13 +354,14 @@ class MachineFunctionCallbacksTest : public testing::Test {
354354
auto *T = TargetRegistry::lookupTarget(TripleName, Error);
355355
if (!T)
356356
GTEST_SKIP();
357-
TM = T->createTargetMachine(TripleName, "", "", TargetOptions(),
358-
std::nullopt);
359-
MachineModuleInfo MMI(static_cast<LLVMTargetMachine *>(TM));
357+
TM = std::unique_ptr<LLVMTargetMachine>(
358+
static_cast<LLVMTargetMachine *>(T->createTargetMachine(
359+
TripleName, "", "", TargetOptions(), std::nullopt)));
360+
if (!TM)
361+
GTEST_SKIP();
362+
MachineModuleInfo MMI(TM.get());
360363
M = parseMIR(*TM, MIRString, MMI);
361-
AM.registerPass([&] {
362-
return MachineModuleAnalysis(static_cast<LLVMTargetMachine *>(TM));
363-
});
364+
AM.registerPass([&] { return MachineModuleAnalysis(TM.get()); });
364365
}
365366

366367
MachineFunctionCallbacksTest()

0 commit comments

Comments
 (0)