diff options
author | Momchil Velikov <momchil.velikov@arm.com> | 2023-07-19 18:31:25 +0100 |
---|---|---|
committer | Momchil Velikov <momchil.velikov@arm.com> | 2023-07-19 18:56:44 +0100 |
commit | 4c95f79cce190a3bc9ad4add2d32a2ae5f035d91 (patch) | |
tree | f5bb9317306b7281f32a5267f04b5d918df5b1e8 /llvm/lib/Transforms/Utils/BasicBlockUtils.cpp | |
parent | 73f09814ee8bbd9f06a54c169ce9370bdf0b11e9 (diff) | |
download | llvm-4c95f79cce190a3bc9ad4add2d32a2ae5f035d91.zip llvm-4c95f79cce190a3bc9ad4add2d32a2ae5f035d91.tar.gz llvm-4c95f79cce190a3bc9ad4add2d32a2ae5f035d91.tar.bz2 |
[CodeGenPrepare] Refactor optimizeSelectInst (NFC)
Refactor to use BasicBlockUtils functions and make life easier for
a subsequent patch for updating the dominator tree.
Reviewed By: dmgreen
Differential Revision: https://reviews.llvm.org/D154053
Diffstat (limited to 'llvm/lib/Transforms/Utils/BasicBlockUtils.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/BasicBlockUtils.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp b/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp index a28b331..f06ea89 100644 --- a/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp +++ b/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp @@ -1484,6 +1484,19 @@ Instruction *llvm::SplitBlockAndInsertIfThen(Value *Cond, return ThenBlock->getTerminator(); } +Instruction *llvm::SplitBlockAndInsertIfElse(Value *Cond, + Instruction *SplitBefore, + bool Unreachable, + MDNode *BranchWeights, + DomTreeUpdater *DTU, LoopInfo *LI, + BasicBlock *ElseBlock) { + SplitBlockAndInsertIfThenElse( + Cond, SplitBefore, /* ThenBlock */ nullptr, &ElseBlock, + /* UnreachableThen */ false, + /* UnreachableElse */ Unreachable, BranchWeights, DTU, LI); + return ElseBlock->getTerminator(); +} + void llvm::SplitBlockAndInsertIfThenElse(Value *Cond, Instruction *SplitBefore, Instruction **ThenTerm, Instruction **ElseTerm, |