Index: llvm/unittests/CodeGen/MachineInstrTest.cpp =================================================================== --- llvm/unittests/CodeGen/MachineInstrTest.cpp +++ llvm/unittests/CodeGen/MachineInstrTest.cpp @@ -376,135 +376,6 @@ ASSERT_TRUE(std::distance(MIS.begin(), MII) == 1); } -TEST(MachineInstrExtraInfo, AddExtraInfo) { - auto MF = createMachineFunction(); - MCInstrDesc MCID = {0, 0, 0, 0, 0, 0, - 0, nullptr, nullptr, nullptr, 0, nullptr}; - - auto MI = MF->CreateMachineInstr(MCID, DebugLoc()); - auto MC = createMCContext(); - auto MMO = MF->getMachineMemOperand(MachinePointerInfo(), - MachineMemOperand::MOLoad, 8, 8); - SmallVector MMOs; - MMOs.push_back(MMO); - MCSymbol *Sym1 = MC->createTempSymbol("pre_label", false); - MCSymbol *Sym2 = MC->createTempSymbol("post_label", false); - LLVMContext Ctx; - MDNode *MDN = MDNode::getDistinct(Ctx, None); - - ASSERT_TRUE(MI->memoperands_empty()); - ASSERT_FALSE(MI->getPreInstrSymbol()); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_FALSE(MI->getHeapAllocMarker()); - - MI->setMemRefs(*MF, MMOs); - ASSERT_TRUE(MI->memoperands().size() == 1); - ASSERT_FALSE(MI->getPreInstrSymbol()); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_FALSE(MI->getHeapAllocMarker()); - - MI->setPreInstrSymbol(*MF, Sym1); - ASSERT_TRUE(MI->memoperands().size() == 1); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_FALSE(MI->getHeapAllocMarker()); - - MI->setPostInstrSymbol(*MF, Sym2); - ASSERT_TRUE(MI->memoperands().size() == 1); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_TRUE(MI->getPostInstrSymbol() == Sym2); - ASSERT_FALSE(MI->getHeapAllocMarker()); - - MI->setHeapAllocMarker(*MF, MDN); - ASSERT_TRUE(MI->memoperands().size() == 1); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_TRUE(MI->getPostInstrSymbol() == Sym2); - ASSERT_TRUE(MI->getHeapAllocMarker() == MDN); -} - -TEST(MachineInstrExtraInfo, ChangeExtraInfo) { - auto MF = createMachineFunction(); - MCInstrDesc MCID = {0, 0, 0, 0, 0, 0, - 0, nullptr, nullptr, nullptr, 0, nullptr}; - - auto MI = MF->CreateMachineInstr(MCID, DebugLoc()); - auto MC = createMCContext(); - auto MMO = MF->getMachineMemOperand(MachinePointerInfo(), - MachineMemOperand::MOLoad, 8, 8); - SmallVector MMOs; - MMOs.push_back(MMO); - MCSymbol *Sym1 = MC->createTempSymbol("pre_label", false); - MCSymbol *Sym2 = MC->createTempSymbol("post_label", false); - LLVMContext Ctx; - MDNode *MDN = MDNode::getDistinct(Ctx, None); - - MI->setMemRefs(*MF, MMOs); - MI->setPreInstrSymbol(*MF, Sym1); - MI->setPostInstrSymbol(*MF, Sym2); - MI->setHeapAllocMarker(*MF, MDN); - - MMOs.push_back(MMO); - - MI->setMemRefs(*MF, MMOs); - ASSERT_TRUE(MI->memoperands().size() == 2); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_TRUE(MI->getPostInstrSymbol() == Sym2); - ASSERT_TRUE(MI->getHeapAllocMarker() == MDN); - - MI->setPostInstrSymbol(*MF, Sym1); - ASSERT_TRUE(MI->memoperands().size() == 2); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_TRUE(MI->getPostInstrSymbol() == Sym1); - ASSERT_TRUE(MI->getHeapAllocMarker() == MDN); -} - -TEST(MachineInstrExtraInfo, RemoveExtraInfo) { - auto MF = createMachineFunction(); - MCInstrDesc MCID = {0, 0, 0, 0, 0, 0, - 0, nullptr, nullptr, nullptr, 0, nullptr}; - - auto MI = MF->CreateMachineInstr(MCID, DebugLoc()); - auto MC = createMCContext(); - auto MMO = MF->getMachineMemOperand(MachinePointerInfo(), - MachineMemOperand::MOLoad, 8, 8); - SmallVector MMOs; - MMOs.push_back(MMO); - MMOs.push_back(MMO); - MCSymbol *Sym1 = MC->createTempSymbol("pre_label", false); - MCSymbol *Sym2 = MC->createTempSymbol("post_label", false); - LLVMContext Ctx; - MDNode *MDN = MDNode::getDistinct(Ctx, None); - - MI->setMemRefs(*MF, MMOs); - MI->setPreInstrSymbol(*MF, Sym1); - MI->setPostInstrSymbol(*MF, Sym2); - MI->setHeapAllocMarker(*MF, MDN); - - MI->setPostInstrSymbol(*MF, nullptr); - ASSERT_TRUE(MI->memoperands().size() == 2); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_TRUE(MI->getHeapAllocMarker() == MDN); - - MI->setHeapAllocMarker(*MF, nullptr); - ASSERT_TRUE(MI->memoperands().size() == 2); - ASSERT_TRUE(MI->getPreInstrSymbol() == Sym1); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_FALSE(MI->getHeapAllocMarker()); - - MI->setPreInstrSymbol(*MF, nullptr); - ASSERT_TRUE(MI->memoperands().size() == 2); - ASSERT_FALSE(MI->getPreInstrSymbol()); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_FALSE(MI->getHeapAllocMarker()); - - MI->setMemRefs(*MF, {}); - ASSERT_TRUE(MI->memoperands_empty()); - ASSERT_FALSE(MI->getPreInstrSymbol()); - ASSERT_FALSE(MI->getPostInstrSymbol()); - ASSERT_FALSE(MI->getHeapAllocMarker()); -} - static_assert(is_trivially_copyable::value, "trivially copyable"); } // end namespace