diff options
-rw-r--r-- | llvm/lib/CodeGen/CodeGenPrepare.cpp | 8 | ||||
-rw-r--r-- | llvm/lib/IR/BasicBlock.cpp | 6 |
2 files changed, 5 insertions, 9 deletions
diff --git a/llvm/lib/CodeGen/CodeGenPrepare.cpp b/llvm/lib/CodeGen/CodeGenPrepare.cpp index a4e382d9c85..4b9cc003ee2 100644 --- a/llvm/lib/CodeGen/CodeGenPrepare.cpp +++ b/llvm/lib/CodeGen/CodeGenPrepare.cpp @@ -5458,11 +5458,9 @@ bool CodeGenPrepare::splitBranchCondition(Function &F) { DEBUG(dbgs() << "Before branch condition splitting\n"; BB.dump()); // Create a new BB. - auto *InsertBefore = std::next(Function::iterator(BB)) - .getNodePtrUnchecked(); - auto TmpBB = BasicBlock::Create(BB.getContext(), - BB.getName() + ".cond.split", - BB.getParent(), InsertBefore); + auto TmpBB = + BasicBlock::Create(BB.getContext(), BB.getName() + ".cond.split", + BB.getParent(), BB.getNextNode()); // Update original basic block by using the first condition directly by the // branch instruction and removing the no longer needed and/or instruction. diff --git a/llvm/lib/IR/BasicBlock.cpp b/llvm/lib/IR/BasicBlock.cpp index f61276fd436..89a1d744441 100644 --- a/llvm/lib/IR/BasicBlock.cpp +++ b/llvm/lib/IR/BasicBlock.cpp @@ -361,10 +361,8 @@ BasicBlock *BasicBlock::splitBasicBlock(iterator I, const Twine &BBName) { assert(I != InstList.end() && "Trying to get me to create degenerate basic block!"); - BasicBlock *InsertBefore = std::next(Function::iterator(this)) - .getNodePtrUnchecked(); - BasicBlock *New = BasicBlock::Create(getContext(), BBName, - getParent(), InsertBefore); + BasicBlock *New = BasicBlock::Create(getContext(), BBName, getParent(), + this->getNextNode()); // Save DebugLoc of split point before invalidating iterator. DebugLoc Loc = I->getDebugLoc(); |