| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Coroutines/ |
| H A D | CoroElide.cpp | 50 SmallPtrSet<const SwitchInst *, 4> CoroSuspendSwitches; 160 if (CSI->hasOneUse() && isa<SwitchInst>(CSI->use_begin()->getUser())) { in collectPostSplitCoroIds() 161 SwitchInst *SWI = cast<SwitchInst>(CSI->use_begin()->getUser()); in collectPostSplitCoroIds() 309 if (isa<SwitchInst>(TI) && in canCoroBeginEscape() 310 FEI.CoroSuspendSwitches.count(cast<SwitchInst>(TI))) { in canCoroBeginEscape() 311 Worklist.push_back(cast<SwitchInst>(TI)->getSuccessor(1)); in canCoroBeginEscape() 312 Worklist.push_back(cast<SwitchInst>(TI)->getSuccessor(2)); in canCoroBeginEscape()
|
| /freebsd/contrib/llvm-project/llvm/lib/SandboxIR/ |
| H A D | Instruction.cpp | 1092 SwitchInst *SwitchInst::create(Value *V, BasicBlock *Dest, unsigned NumCases, in create() 1096 llvm::SwitchInst *LLVMSwitch = in create() 1101 Value *SwitchInst::getCondition() const { in getCondition() 1102 return Ctx.getValue(cast<llvm::SwitchInst>(Val)->getCondition()); in getCondition() 1105 void SwitchInst::setCondition(Value *V) { in setCondition() 1108 GenericSetter<&SwitchInst::getCondition, &SwitchInst::setCondition>>( in setCondition() 1110 cast<llvm::SwitchInst>(Val)->setCondition(V->Val); in setCondition() 1113 BasicBlock *SwitchInst::getDefaultDest() const { in getDefaultDest() 1115 Ctx.getValue(cast<llvm::SwitchInst>(Val)->getDefaultDest())); in getDefaultDest() 1118 void SwitchInst::setDefaultDest(BasicBlock *DefaultCase) { in setDefaultDest() [all …]
|
| H A D | Context.cpp | 202 auto *LLVMSwitchInst = cast<llvm::SwitchInst>(LLVMV); in getOrCreateValueInternal() 204 std::unique_ptr<SwitchInst>(new SwitchInst(LLVMSwitchInst, *this)); in getOrCreateValueInternal() 586 SwitchInst *Context::createSwitchInst(llvm::SwitchInst *I) { in createSwitchInst() 587 auto NewPtr = std::unique_ptr<SwitchInst>(new SwitchInst(I, *this)); in createSwitchInst() 588 return cast<SwitchInst>(registerValue(std::move(NewPtr))); in createSwitchInst()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | DFAJumpThreading.cpp | 424 MainSwitch(SwitchInst *SI, LoopInfo *LI, OptimizationRemarkEmitter *ORE) in MainSwitch() 438 SwitchInst *getInstr() const { return Instr; } in getInstr() 448 bool isCandidate(const SwitchInst *SI) { in isCandidate() 554 SwitchInst *Instr = nullptr; 566 SwitchInst *getSwitchInst() { return Switch; } in getSwitchInst() 790 SwitchInst *Switch; 820 SwitchInst *Switch = SwitchPaths->getSwitchInst(); in isLegalAndProfitableToTransform() 1131 SwitchInst *Switch = SwitchPaths->getSwitchInst(); in updateSuccessorPhis() 1204 isa<SwitchInst>(Inst)) { in updateDefMap() 1240 if (!isa<SwitchInst>(LastBlock->getTerminator())) in updateLastSuccessor() [all …]
|
| H A D | LowerExpectIntrinsic.cpp | 76 static bool handleSwitchExpect(SwitchInst &SI) { in handleSwitchExpect() 91 SwitchInst::CaseHandle Case = *SI.findCaseValue(ExpectedValue); in handleSwitchExpect() 372 } else if (SwitchInst *SI = dyn_cast<SwitchInst>(BB.getTerminator())) { in lowerExpectIntrinsic()
|
| H A D | LoopSimplifyCFG.cpp | 63 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in getOnlyLiveSuccessor() 371 SwitchInst *DummySwitch = in handleDeadExits()
|
| H A D | SimpleLoopUnswitch.cpp | 749 static bool unswitchTrivialSwitch(Loop &L, SwitchInst &SI, DominatorTree &DT, in unswitchTrivialSwitch() 852 all_of(drop_begin(SI.cases()), [&SI](const SwitchInst::CaseHandle &Case) { in unswitchTrivialSwitch() 875 auto *NewSI = SwitchInst::Create(LoopCond, NewPH, ExitCases.size(), OldPH); in unswitchTrivialSwitch() 1086 if (auto *SI = dyn_cast<SwitchInst>(CurrentTerm)) { in unswitchAllTrivialConditions() 1322 else if (auto *SI = dyn_cast<SwitchInst>(ClonedTerminator)) in buildClonedLoopBlocks() 2188 SwitchInst *SI = BI ? nullptr : cast<SwitchInst>(&TI); in unswitchNontrivialInvariants() 2443 SwitchInst *NewSI = cast<SwitchInst>(NewTI); in unswitchNontrivialInvariants() 2955 if (auto *SI = dyn_cast<SwitchInst>(BB->getTerminator())) { in collectUnswitchCandidates() 3482 assert(isa<BranchInst>(TI) || isa<SwitchInst>(TI)); in shouldInsertFreeze() 3495 Cond = skipTrivialSelect(cast<SwitchInst>(&TI)->getCondition()); in shouldInsertFreeze()
|
| /freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
| H A D | CGCleanup.cpp | 328 llvm::SwitchInst *Switch, in ResolveAllBranchFixups() 365 static llvm::SwitchInst *TransitionToCleanupSwitch(CodeGenFunction &CGF, in TransitionToCleanupSwitch() 376 llvm::SwitchInst *Switch = in TransitionToCleanupSwitch() 377 llvm::SwitchInst::Create(Load, Br->getSuccessor(0), 4, Block); in TransitionToCleanupSwitch() 381 return cast<llvm::SwitchInst>(Term); in TransitionToCleanupSwitch() 413 llvm::SwitchInst *Switch = TransitionToCleanupSwitch(*this, BranchBB); in ResolveBranchFixups() 598 llvm::SwitchInst *Switch = cast<llvm::SwitchInst>(Term); in ForwardPrebranchedFallthrough() 626 llvm::SwitchInst *si = cast<llvm::SwitchInst>(use.getUser()); in destroyOptimisticNormalEntry() 928 llvm::SwitchInst *Switch = in PopCleanupBlock() 929 llvm::SwitchInst::Create(Load, Default, SwitchCapacity); in PopCleanupBlock()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/SandboxIR/ |
| H A D | Tracker.h | 64 class SwitchInst; variable 350 SwitchInst *Switch; 354 SwitchAddCase(SwitchInst *Switch, ConstantInt *Val) 365 SwitchInst *Switch; 373 SwitchRemoveCase(SwitchInst *Switch);
|
| H A D | Context.h | 213 LLVM_ABI SwitchInst *createSwitchInst(llvm::SwitchInst *I); 214 friend SwitchInst; // For createSwitchInst()
|
| H A D | Instruction.h | 86 friend class SwitchInst; // For getTopmostLLVMInstruction(). variable 1863 class SwitchInst : public SingleLLVMInstructionImpl<llvm::SwitchInst> { 1864 SwitchInst(llvm::SwitchInst *SI, Context &Ctx) in SwitchInst() function 1870 llvm::SwitchInst::DefaultPseudoIndex; 1872 LLVM_ABI static SwitchInst *create(Value *V, BasicBlock *Dest, 1880 return cast<llvm::SwitchInst>(Val)->defaultDestUnreachable(); in defaultDestUnreachable() 1884 return cast<llvm::SwitchInst>(Val)->getNumCases(); in getNumCases() 1888 llvm::SwitchInst::CaseHandleImpl<SwitchInst, ConstantInt, BasicBlock>; 1890 llvm::SwitchInst::CaseHandleImpl<const SwitchInst, const ConstantInt, 1892 using CaseIt = llvm::SwitchInst::CaseIteratorImpl<CaseHandle>; [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | SwitchLoweringUtils.h | 281 void findJumpTables(CaseClusterVector &Clusters, const SwitchInst *SI, 286 unsigned Last, const SwitchInst *SI, 290 void findBitTestClusters(CaseClusterVector &Clusters, const SwitchInst *SI); 295 const SwitchInst *SI, CaseCluster &BTCluster);
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/ |
| H A D | SPIRVMergeRegionExitTargets.cpp | 54 if (auto *SI = dyn_cast<SwitchInst>(T)) { in gatherSuccessors() 111 if (auto *SI = dyn_cast<SwitchInst>(T)) { in replaceBranchTargets() 187 llvm::SwitchInst *Sw = Builder.CreateSwitch(Load, SortedExitTargets[0], in runOnConvergenceRegionNoRecurse()
|
| H A D | SPIRVStructurizer.cpp | 271 if (auto *SI = dyn_cast<SwitchInst>(T)) { in replaceBranchTargets() 508 SwitchInst *Sw = ExitBuilder.CreateSwitch(Load, Dsts[0], Dsts.size() - 1); in createSingleExitNode() 936 SwitchInst *SI = dyn_cast<SwitchInst>(BB.getTerminator()); in simplifyBranches() 968 SwitchInst *SI = dyn_cast<SwitchInst>(BB.getTerminator()); in splitSwitchCases()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | CFGPrinter.h | 231 if (const SwitchInst *SI = dyn_cast<SwitchInst>(Node->getTerminator())) { 239 auto Case = *SwitchInst::ConstCaseIt::fromSuccessorIndex(SI, SuccNo);
|
| H A D | SparsePropagation.h | 333 if (!isa<SwitchInst>(TI)) { in getFeasibleSuccessors() 339 SwitchInst &SI = cast<SwitchInst>(TI); in getFeasibleSuccessors() 365 SwitchInst::CaseHandle Case = *SI.findCaseValue(cast<ConstantInt>(C)); in getFeasibleSuccessors()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
| H A D | PredicateInfo.h | 162 SwitchInst *Switch; 164 Value *CaseValue, SwitchInst *SI) in PredicateSwitch()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
| H A D | JumpThreading.h | 45 class SwitchInst; variable 172 LLVM_ABI bool tryToUnfoldSelect(SwitchInst *SI, BasicBlock *BB);
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | LowerSwitch.cpp | 307 unsigned Clusterify(CaseVector &Cases, SwitchInst *SI) { in Clusterify() 349 void ProcessSwitchInst(SwitchInst *SI, in ProcessSwitchInst() 546 if (SwitchInst *SI = dyn_cast<SwitchInst>(Cur.getTerminator())) { in LowerSwitch()
|
| H A D | SimplifyCFG.cpp | 283 bool simplifySwitch(SwitchInst *SI, IRBuilder<> &Builder); 284 bool simplifyDuplicateSwitchArms(SwitchInst *SI, DomTreeUpdater *DTU); 303 bool simplifySwitchOnSelect(SwitchInst *SI, SelectInst *Select); 305 bool turnSwitchRangeIntoICmp(SwitchInst *SI, IRBuilder<> &Builder); 784 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in eraseTerminatorAndDCECond() 802 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in isValueEqualityComparison() 829 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in getValueEqualityComparisonCases() 889 static void setBranchWeights(SwitchInst *SI, ArrayRef<uint32_t> Weights, in setBranchWeights() 977 SwitchInstProfUpdateWrapper SI = *cast<SwitchInst>(TI); in simplifyEqualityComparisonWithOnlyPredecessor() 987 for (SwitchInst::CaseIt i = SI->case_end(), e = SI->case_begin(); i != e;) { in simplifyEqualityComparisonWithOnlyPredecessor() [all …]
|
| H A D | MisExpect.cpp | 94 else if (auto *S = dyn_cast<SwitchInst>(I)) { in getInstCondition()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | Instructions.h | 3195 class SwitchInst : public Instruction { 3204 SwitchInst(const SwitchInst &SI); 3210 LLVM_ABI SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases, 3223 LLVM_ABI SwitchInst *cloneImpl() const; 3241 friend class SwitchInst::CaseIteratorImpl< 3288 CaseHandleImpl<const SwitchInst, const ConstantInt, const BasicBlock>; 3291 : public CaseHandleImpl<SwitchInst, ConstantInt, BasicBlock> { 3292 friend class SwitchInst::CaseIteratorImpl<CaseHandle>; 3295 CaseHandle(SwitchInst *SI, ptrdiff_t Index) : CaseHandleImpl(SI, Index) {} 3379 static SwitchInst *Create(Value *Value, BasicBlock *Default, [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | SwitchLoweringUtils.cpp | 47 const SwitchInst *SI, in findJumpTables() 194 const SwitchInst *SI, in buildJumpTable() 269 const SwitchInst *SI) { in findBitTestClusters() 369 const SwitchInst *SI, in buildBitTests()
|
| H A D | TypePromotion.cpp | 266 if (auto *Switch = dyn_cast<SwitchInst>(V)) in isSink() 516 if (!isa<ICmpInst>(I) && !isa<SwitchInst>(I)) { in PromoteTree() 563 if (auto *Switch = dyn_cast<SwitchInst>(I)) { in TruncateSinks() 665 } else if (auto *Switch = dyn_cast<SwitchInst>(I)) in Mutate()
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-diff/lib/ |
| H A D | DifferenceEngine.cpp | 492 } 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()
|