Home
last modified time | relevance | path

Searched refs:SwitchInst (Results 1 – 25 of 100) sorted by relevance

1234

/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Coroutines/
H A DCoroElide.cpp42 SmallPtrSet<const SwitchInst *, 4> CoroSuspendSwitches;
249 if (isa<SwitchInst>(TI) && in hasEscapePath()
250 CoroSuspendSwitches.count(cast<SwitchInst>(TI))) { in hasEscapePath()
251 Worklist.push_back(cast<SwitchInst>(TI)->getSuccessor(1)); in hasEscapePath()
252 Worklist.push_back(cast<SwitchInst>(TI)->getSuccessor(2)); in hasEscapePath()
332 if (CSI->hasOneUse() && isa<SwitchInst>(CSI->use_begin()->getUser())) { in collectPostSplitCoroIds()
333 SwitchInst *SWI = cast<SwitchInst>(CSI->use_begin()->getUser()); in collectPostSplitCoroIds()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DDFAJumpThreading.cpp394 SwitchInst *getInstr() const { return Instr; } in getInstr()
404 bool isCandidate(const SwitchInst *SI) { in isCandidate()
491 SwitchInst *Instr = nullptr;
502 SwitchInst *getSwitchInst() { return Switch; } in getSwitchInst()
707 SwitchInst *Switch;
735 SwitchInst *Switch = SwitchPaths->getSwitchInst(); in isLegalAndProfitableToTransform()
1046 SwitchInst *Switch = SwitchPaths->getSwitchInst(); in updateSuccessorPhis()
1119 isa<SwitchInst>(Inst)) { in updateDefMap()
1155 if (!isa<SwitchInst>(LastBlock->getTerminator())) in updateLastSuccessor()
1157 SwitchInst *Switch = cast<SwitchInst>(LastBlock->getTerminator()); in updateLastSuccessor()
[all …]
H A DLowerExpectIntrinsic.cpp76 static bool handleSwitchExpect(SwitchInst &SI) { in handleSwitchExpect()
91 SwitchInst::CaseHandle Case = *SI.findCaseValue(ExpectedValue); in handleSwitchExpect()
370 } else if (SwitchInst *SI = dyn_cast<SwitchInst>(BB.getTerminator())) { in lowerExpectIntrinsic()
H A DLoopSimplifyCFG.cpp64 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in getOnlyLiveSuccessor()
357 SwitchInst *DummySwitch = in handleDeadExits()
H A DSimpleLoopUnswitch.cpp738 static bool unswitchTrivialSwitch(Loop &L, SwitchInst &SI, DominatorTree &DT, in unswitchTrivialSwitch()
842 all_of(drop_begin(SI.cases()), [&SI](const SwitchInst::CaseHandle &Case) { in unswitchTrivialSwitch()
863 auto *NewSI = SwitchInst::Create(LoopCond, NewPH, ExitCases.size(), OldPH); in unswitchTrivialSwitch()
1072 if (auto *SI = dyn_cast<SwitchInst>(CurrentTerm)) { in unswitchAllTrivialConditions()
1304 else if (auto *SI = dyn_cast<SwitchInst>(ClonedTerminator)) in buildClonedLoopBlocks()
2169 SwitchInst *SI = BI ? nullptr : cast<SwitchInst>(&TI); in unswitchNontrivialInvariants()
2418 SwitchInst *NewSI = cast<SwitchInst>(NewTI); in unswitchNontrivialInvariants()
2928 if (auto *SI = dyn_cast<SwitchInst>(BB->getTerminator())) { in collectUnswitchCandidates()
3453 assert(isa<BranchInst>(TI) || isa<SwitchInst>(TI)); in shouldInsertFreeze()
3466 Cond = skipTrivialSelect(cast<SwitchInst>(&TI)->getCondition()); in shouldInsertFreeze()
H A DLoopDeletion.cpp374 } else if (SwitchInst *SI = dyn_cast<SwitchInst>(Term)) { in canProveExitOnFirstIteration()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DSwitchLoweringUtils.h276 void findJumpTables(CaseClusterVector &Clusters, const SwitchInst *SI,
281 unsigned Last, const SwitchInst *SI,
285 void findBitTestClusters(CaseClusterVector &Clusters, const SwitchInst *SI);
290 const SwitchInst *SI, CaseCluster &BTCluster);
/freebsd-14.2/contrib/llvm-project/clang/lib/CodeGen/
H A DCGCleanup.cpp341 llvm::SwitchInst *Switch, in ResolveAllBranchFixups()
378 static llvm::SwitchInst *TransitionToCleanupSwitch(CodeGenFunction &CGF, in TransitionToCleanupSwitch()
389 llvm::SwitchInst *Switch = in TransitionToCleanupSwitch()
390 llvm::SwitchInst::Create(Load, Br->getSuccessor(0), 4, Block); in TransitionToCleanupSwitch()
394 return cast<llvm::SwitchInst>(Term); in TransitionToCleanupSwitch()
426 llvm::SwitchInst *Switch = TransitionToCleanupSwitch(*this, BranchBB); in ResolveBranchFixups()
611 llvm::SwitchInst *Switch = cast<llvm::SwitchInst>(Term); in ForwardPrebranchedFallthrough()
639 llvm::SwitchInst *si = cast<llvm::SwitchInst>(use.getUser()); in destroyOptimisticNormalEntry()
918 llvm::SwitchInst *Switch = in PopCleanupBlock()
919 llvm::SwitchInst::Create(Load, Default, SwitchCapacity); in PopCleanupBlock()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DPredicateInfo.h163 SwitchInst *Switch;
165 Value *CaseValue, SwitchInst *SI) in PredicateSwitch()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DSparsePropagation.h334 if (!isa<SwitchInst>(TI)) { in getFeasibleSuccessors()
340 SwitchInst &SI = cast<SwitchInst>(TI); in getFeasibleSuccessors()
366 SwitchInst::CaseHandle Case = *SI.findCaseValue(cast<ConstantInt>(C)); in getFeasibleSuccessors()
H A DCFGPrinter.h242 if (const SwitchInst *SI = dyn_cast<SwitchInst>(Node->getTerminator())) {
250 auto Case = *SwitchInst::ConstCaseIt::fromSuccessorIndex(SI, SuccNo);
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DJumpThreading.h43 class SwitchInst; variable
162 bool tryToUnfoldSelect(SwitchInst *SI, BasicBlock *BB);
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DSimplifyCFG.cpp264 bool simplifySwitch(SwitchInst *SI, IRBuilder<> &Builder);
758 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in EraseTerminatorAndDCECond()
776 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in isValueEqualityComparison()
803 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in GetValueEqualityComparisonCases()
949 SwitchInstProfUpdateWrapper SI = *cast<SwitchInst>(TI); in SimplifyEqualityComparisonWithOnlyPredecessor()
4715 if (!Pred || !isa<SwitchInst>(Pred->getTerminator())) in tryToSimplifyUncondBranchWithICmpInIt()
4718 SwitchInst *SI = cast<SwitchInst>(Pred->getTerminator()); in tryToSimplifyUncondBranchWithICmpInIt()
5312 } else if (auto *SI = dyn_cast<SwitchInst>(TI)) { in simplifyUnreachable()
5687 static bool ForwardSwitchConditionToPHI(SwitchInst *SI) { in ForwardSwitchConditionToPHI()
6575 SwitchInst::CaseIt CI = SI->case_begin(); in SwitchToLookupTable()
[all …]
H A DLowerSwitch.cpp309 unsigned Clusterify(CaseVector &Cases, SwitchInst *SI) { in Clusterify()
351 void ProcessSwitchInst(SwitchInst *SI, in ProcessSwitchInst()
548 if (SwitchInst *SI = dyn_cast<SwitchInst>(Cur.getTerminator())) { in LowerSwitch()
H A DMisExpect.cpp95 else if (auto *S = dyn_cast<SwitchInst>(I)) { in getInstCondition()
H A DPredicateInfo.cpp268 void processSwitch(SwitchInst *, BasicBlock *,
473 SwitchInst *SI, BasicBlock *BranchBB, in processSwitch()
514 } else if (auto *SI = dyn_cast<SwitchInst>(BranchBB->getTerminator())) { in buildPredicateInfo()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstructions.h3297 class SwitchInst : public Instruction {
3304 SwitchInst(const SwitchInst &SI);
3330 SwitchInst *cloneImpl() const;
3348 friend class SwitchInst::CaseIteratorImpl<
3399 friend class SwitchInst::CaseIteratorImpl<CaseHandle>;
3640 SwitchInst &SI;
3651 SwitchInst *operator->() { return &SI; }
3652 SwitchInst &operator*() { return SI; }
3653 operator SwitchInst *() { return &SI; }
3664 SwitchInst::CaseIt removeCase(SwitchInst::CaseIt I);
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DSwitchLoweringUtils.cpp47 const SwitchInst *SI, in findJumpTables()
193 const SwitchInst *SI, in buildJumpTable()
268 const SwitchInst *SI) { in findBitTestClusters()
368 const SwitchInst *SI, in buildBitTests()
H A DTypePromotion.cpp265 if (auto *Switch = dyn_cast<SwitchInst>(V)) in isSink()
508 if (!isa<ICmpInst>(I) && !isa<SwitchInst>(I)) { in PromoteTree()
555 if (auto *Switch = dyn_cast<SwitchInst>(I)) { in TruncateSinks()
657 } else if (auto *Switch = dyn_cast<SwitchInst>(I)) in Mutate()
/freebsd-14.2/contrib/llvm-project/llvm/tools/llvm-diff/lib/
H A DDifferenceEngine.cpp492 } else if (isa<SwitchInst>(L)) { in diff()
493 const SwitchInst *LI = cast<SwitchInst>(L); in diff()
494 const SwitchInst *RI = cast<SwitchInst>(R); in diff()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DCrossDSOCFI.cpp123 SwitchInst *SI = IRB.CreateSwitch(&CallSiteTypeId, TrapBB, TypeIds.size()); in buildCFICheck()
/freebsd-14.2/contrib/llvm-project/llvm/lib/IR/
H A DInstructions.cpp4469 void SwitchInst::init(Value *Value, BasicBlock *Default, unsigned NumReserved) { in init()
4483 SwitchInst::SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases, in SwitchInst() function in SwitchInst
4494 SwitchInst::SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases, in SwitchInst() function in SwitchInst
4501 SwitchInst::SwitchInst(const SwitchInst &SI) in SwitchInst() function in SwitchInst
4516 void SwitchInst::addCase(ConstantInt *OnVal, BasicBlock *Dest) { in addCase()
4531 SwitchInst::CaseIt SwitchInst::removeCase(CaseIt I) { in removeCase()
4556 void SwitchInst::growOperands() { in growOperands()
4597 SwitchInst::CaseIt
4598 SwitchInstProfUpdateWrapper::removeCase(SwitchInst::CaseIt I) { in removeCase()
4664 SwitchInstProfUpdateWrapper::getSuccessorWeight(const SwitchInst &SI, in getSuccessorWeight()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAGBuilder.h83 class SwitchInst; variable
215 peelDominantCaseCluster(const SwitchInst &SI,
497 void visitSwitch(const SwitchInst &I);
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Lanai/
H A DLanaiAsmPrinter.cpp226 if (isa<SwitchInst>(B->getTerminator())) in isBlockOnlyReachableByFallthrough()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVEmitIntrinsics.cpp89 Instruction *visitSwitchInst(SwitchInst &I);
235 Instruction *SPIRVEmitIntrinsics::visitSwitchInst(SwitchInst &I) { in visitSwitchInst()
592 isa<PHINode>(I) || isa<SwitchInst>(I)) in processInstrAfterVisit()

1234