Skip to content

Commit fdd0815

Browse files
committed
Fix initialization-order-fiasco error in "Add a heap alloc site marker field to the ExtraInfo in MachineInstrs"
1 parent 2179867 commit fdd0815

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

llvm/unittests/CodeGen/MachineInstrTest.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -139,11 +139,9 @@ class BogusTargetMachine : public LLVMTargetMachine {
139139
BogusSubtarget ST;
140140
};
141141

142-
static MCAsmInfo AsmInfo = MCAsmInfo();
143-
144-
std::unique_ptr<MCContext> createMCContext() {
142+
std::unique_ptr<MCContext> createMCContext(MCAsmInfo *AsmInfo) {
145143
return std::make_unique<MCContext>(
146-
&AsmInfo, nullptr, nullptr, nullptr, nullptr, false);
144+
AsmInfo, nullptr, nullptr, nullptr, nullptr, false);
147145
}
148146

149147
std::unique_ptr<BogusTargetMachine> createTargetMachine() {
@@ -378,7 +376,8 @@ TEST(MachineInstrExtraInfo, AddExtraInfo) {
378376
0, nullptr, nullptr, nullptr, 0, nullptr};
379377

380378
auto MI = MF->CreateMachineInstr(MCID, DebugLoc());
381-
auto MC = createMCContext();
379+
auto MAI = MCAsmInfo();
380+
auto MC = createMCContext(&MAI);
382381
auto MMO = MF->getMachineMemOperand(MachinePointerInfo(),
383382
MachineMemOperand::MOLoad, 8, 8);
384383
SmallVector<MachineMemOperand *, 2> MMOs;
@@ -424,7 +423,8 @@ TEST(MachineInstrExtraInfo, ChangeExtraInfo) {
424423
0, nullptr, nullptr, nullptr, 0, nullptr};
425424

426425
auto MI = MF->CreateMachineInstr(MCID, DebugLoc());
427-
auto MC = createMCContext();
426+
auto MAI = MCAsmInfo();
427+
auto MC = createMCContext(&MAI);
428428
auto MMO = MF->getMachineMemOperand(MachinePointerInfo(),
429429
MachineMemOperand::MOLoad, 8, 8);
430430
SmallVector<MachineMemOperand *, 2> MMOs;
@@ -460,7 +460,8 @@ TEST(MachineInstrExtraInfo, RemoveExtraInfo) {
460460
0, nullptr, nullptr, nullptr, 0, nullptr};
461461

462462
auto MI = MF->CreateMachineInstr(MCID, DebugLoc());
463-
auto MC = createMCContext();
463+
auto MAI = MCAsmInfo();
464+
auto MC = createMCContext(&MAI);
464465
auto MMO = MF->getMachineMemOperand(MachinePointerInfo(),
465466
MachineMemOperand::MOLoad, 8, 8);
466467
SmallVector<MachineMemOperand *, 2> MMOs;

0 commit comments

Comments
 (0)