Home | History | Annotate | Download | only in IR

Lines Matching refs:BB2

36       "     i32 0, label %bb2\n"
37 " i32 1, label %bb2\n"
42 " bb2:\n"
61 BasicBlock *BB2 = &*FI++;
76 // Unnecessary Insert: no edge bb1 -> bb2 after change to bb0.
77 Updates.push_back({DominatorTree::Insert, BB1, BB2});
81 // CFG Change: remove edge bb0 -> bb3 and one duplicate edge bb0 -> bb2.
84 BranchInst::Create(BB1, BB2, ConstantInt::getTrue(F->getContext()), BB0);
114 " i32 0, label %bb2\n"
115 " i32 1, label %bb2\n"
119 " bb2:\n"
136 BasicBlock *BB2 = &*FI++;
146 DDT.deleteEdge(BB0, BB2);
148 // CFG Change: bb0 now has bb0 -> bb1 and bb0 -> bb2.
154 BranchInst::Create(BB1, BB2, ConstantInt::getTrue(F->getContext()), BB0);
160 DDT.insertEdge(BB0, BB2);
165 EXPECT_FALSE(DDT.pendingDeletedBB(BB2));
246 " i32 2, label %bb2\n"
251 " bb2:\n"
270 BasicBlock *BB2 = &*FI++;
296 // remove bb2.
302 // Remove bb2 from F. This has to happen before the call to applyUpdates() for
303 // DDT to detect there is no longer an edge between bb2 -> bb3. The deleteBB()
304 // method converts bb2's TI into "unreachable".
305 ASSERT_FALSE(isa<UnreachableInst>(BB2->getTerminator()));
306 EXPECT_FALSE(DDT.pendingDeletedBB(BB2));
307 DDT.deleteBB(BB2);
308 EXPECT_TRUE(DDT.pendingDeletedBB(BB2));
309 ASSERT_TRUE(isa<UnreachableInst>(BB2->getTerminator()));
310 EXPECT_EQ(BB2->getParent(), F);
315 Updates.push_back({DominatorTree::Delete, BB0, BB2});
316 Updates.push_back({DominatorTree::Delete, BB2, BB3});