Home
last modified time | relevance | path

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

12345

/openbsd-src/gnu/llvm/llvm/lib/Transforms/Coroutines/
H A DCoroElide.cpp41 SmallPtrSet<const SwitchInst *, 4> CoroSuspendSwitches;
210 if (isa<SwitchInst>(TI) && in hasEscapePath()
211 CoroSuspendSwitches.count(cast<SwitchInst>(TI))) { in hasEscapePath()
212 Worklist.push_back(cast<SwitchInst>(TI)->getSuccessor(1)); in hasEscapePath()
213 Worklist.push_back(cast<SwitchInst>(TI)->getSuccessor(2)); in hasEscapePath()
293 if (CSI->hasOneUse() && isa<SwitchInst>(CSI->use_begin()->getUser())) { in collectPostSplitCoroIds()
294 SwitchInst *SWI = cast<SwitchInst>(CSI->use_begin()->getUser()); in collectPostSplitCoroIds()
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Scalar/
H A DDFAJumpThreading.cpp422 MainSwitch(SwitchInst *SI, OptimizationRemarkEmitter *ORE) { in MainSwitch()
435 SwitchInst *getInstr() const { return Instr; } in getInstr()
445 bool isCandidate(const SwitchInst *SI) { in isCandidate()
531 SwitchInst *Instr = nullptr;
542 SwitchInst *getSwitchInst() { return Switch; } in getSwitchInst()
747 SwitchInst *Switch;
775 SwitchInst *Switch = SwitchPaths->getSwitchInst(); in isLegalAndProfitableToTransform()
1078 SwitchInst *Switch = SwitchPaths->getSwitchInst(); in updateSuccessorPhis()
1151 isa<SwitchInst>(Inst)) { in updateDefMap()
1187 if (!isa<SwitchInst>(LastBlock->getTerminator())) in updateLastSuccessor()
[all …]
H A DLowerExpectIntrinsic.cpp79 static bool handleSwitchExpect(SwitchInst &SI) { in handleSwitchExpect()
94 SwitchInst::CaseHandle Case = *SI.findCaseValue(ExpectedValue); in handleSwitchExpect()
376 } else if (SwitchInst *SI = dyn_cast<SwitchInst>(BB.getTerminator())) { in lowerExpectIntrinsic()
H A DLoopSimplifyCFG.cpp66 if (SwitchInst *SI = dyn_cast<SwitchInst>(TI)) { in getOnlyLiveSuccessor()
359 SwitchInst *DummySwitch = in handleDeadExits()
H A DSimpleLoopUnswitch.cpp697 static bool unswitchTrivialSwitch(Loop &L, SwitchInst &SI, DominatorTree &DT, in unswitchTrivialSwitch()
795 all_of(drop_begin(SI.cases()), [&SI](const SwitchInst::CaseHandle &Case) { in unswitchTrivialSwitch()
816 auto *NewSI = SwitchInst::Create(LoopCond, NewPH, ExitCases.size(), OldPH); in unswitchTrivialSwitch()
1025 if (auto *SI = dyn_cast<SwitchInst>(CurrentTerm)) { in unswitchAllTrivialConditions()
1254 else if (auto *SI = dyn_cast<SwitchInst>(ClonedTerminator)) in buildClonedLoopBlocks()
2085 SwitchInst *SI = BI ? nullptr : cast<SwitchInst>(&TI); in unswitchNontrivialInvariants()
2346 SwitchInst *NewSI = cast<SwitchInst>(NewTI); in unswitchNontrivialInvariants()
2792 if (auto *SI = dyn_cast<SwitchInst>(BB->getTerminator())) { in collectUnswitchCandidates()
H A DLoopDeletion.cpp376 } else if (SwitchInst *SI = dyn_cast<SwitchInst>(Term)) { in canProveExitOnFirstIteration()
/openbsd-src/gnu/llvm/llvm/include/llvm/CodeGen/
H A DSwitchLoweringUtils.h272 void findJumpTables(CaseClusterVector &Clusters, const SwitchInst *SI,
277 unsigned Last, const SwitchInst *SI,
281 void findBitTestClusters(CaseClusterVector &Clusters, const SwitchInst *SI);
286 const SwitchInst *SI, CaseCluster &BTCluster);
/openbsd-src/gnu/llvm/clang/lib/CodeGen/
H A DCGCleanup.cpp336 llvm::SwitchInst *Switch, in ResolveAllBranchFixups()
373 static llvm::SwitchInst *TransitionToCleanupSwitch(CodeGenFunction &CGF, in TransitionToCleanupSwitch()
384 llvm::SwitchInst *Switch = in TransitionToCleanupSwitch()
385 llvm::SwitchInst::Create(Load, Br->getSuccessor(0), 4, Block); in TransitionToCleanupSwitch()
389 return cast<llvm::SwitchInst>(Term); in TransitionToCleanupSwitch()
421 llvm::SwitchInst *Switch = TransitionToCleanupSwitch(*this, BranchBB); in ResolveBranchFixups()
606 llvm::SwitchInst *Switch = cast<llvm::SwitchInst>(Term); in ForwardPrebranchedFallthrough()
634 llvm::SwitchInst *si = cast<llvm::SwitchInst>(use.getUser()); in destroyOptimisticNormalEntry()
908 llvm::SwitchInst *Switch = in PopCleanupBlock()
909 llvm::SwitchInst::Create(Load, Default, SwitchCapacity); in PopCleanupBlock()
/openbsd-src/gnu/llvm/llvm/include/llvm/Analysis/
H A DCFGPrinter.h231 if (const SwitchInst *SI = dyn_cast<SwitchInst>(Node->getTerminator())) {
239 auto Case = *SwitchInst::ConstCaseIt::fromSuccessorIndex(SI, SuccNo);
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()
/openbsd-src/gnu/llvm/llvm/tools/llvm-reduce/deltas/
H A DReduceOperands.cpp80 SwitchInst *SI = dyn_cast<SwitchInst>(Op.getUser()); in switchCaseExists()
H A DReduceBasicBlocks.cpp99 removeUninterestingBBsFromSwitch(SwitchInst &SwInst, in removeUninterestingBBsFromSwitch()
168 if (auto *SwInst = dyn_cast<SwitchInst>(BB.getTerminator())) in extractBasicBlocksFromModule()
/openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Utils/
H A DPredicateInfo.h164 SwitchInst *Switch;
166 Value *CaseValue, SwitchInst *SI) in PredicateSwitch()
/openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Scalar/
H A DJumpThreading.h42 class SwitchInst; variable
161 bool tryToUnfoldSelect(SwitchInst *SI, BasicBlock *BB);
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Utils/
H A DSimplifyCFG.cpp265 bool simplifySwitch(SwitchInst *SI, IRBuilder<> &Builder);
283 bool SimplifySwitchOnSelect(SwitchInst *SI, SelectInst *Select);
285 bool TurnSwitchRangeIntoICmp(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()
863 static void setBranchWeights(SwitchInst *SI, ArrayRef<uint32_t> Weights) { in setBranchWeights()
949 SwitchInstProfUpdateWrapper SI = *cast<SwitchInst>(TI); in SimplifyEqualityComparisonWithOnlyPredecessor()
959 for (SwitchInst::CaseIt i = SI->case_end(), e = SI->case_begin(); i != e;) { in SimplifyEqualityComparisonWithOnlyPredecessor()
1328 SwitchInst *NewSI = Builder.CreateSwitch(CV, PredDefault, PredCases.size()); in PerformValueComparisonIntoPredecessorFolding()
[all …]
H A DLowerSwitch.cpp310 unsigned Clusterify(CaseVector &Cases, SwitchInst *SI) { in Clusterify()
352 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()
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/
H A DSwitchLoweringUtils.cpp47 const SwitchInst *SI, in findJumpTables()
192 const SwitchInst *SI, in buildJumpTable()
266 const SwitchInst *SI) { in findBitTestClusters()
366 const SwitchInst *SI, in buildBitTests()
H A DTypePromotion.cpp267 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()
/openbsd-src/gnu/llvm/llvm/include/llvm/IR/
H A DInstructions.h3283 class SwitchInst : public Instruction {
3290 SwitchInst(const SwitchInst &SI);
3296 SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases,
3303 SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases,
3316 SwitchInst *cloneImpl() const;
3334 friend class SwitchInst::CaseIteratorImpl<
3381 CaseHandleImpl<const SwitchInst, const ConstantInt, const BasicBlock>;
3384 : public CaseHandleImpl<SwitchInst, ConstantInt, BasicBlock> {
3385 friend class SwitchInst::CaseIteratorImpl<CaseHandle>;
3388 CaseHandle(SwitchInst *SI, ptrdiff_t Index) : CaseHandleImpl(SI, Index) {}
[all …]
/openbsd-src/gnu/llvm/llvm/tools/llvm-diff/lib/
H A DDifferenceEngine.cpp494 } else if (isa<SwitchInst>(L)) { in diff()
495 const SwitchInst *LI = cast<SwitchInst>(L); in diff()
496 const SwitchInst *RI = cast<SwitchInst>(R); in diff()
/openbsd-src/gnu/llvm/llvm/lib/Target/SPIRV/
H A DSPIRVEmitIntrinsics.cpp80 Instruction *visitSwitchInst(SwitchInst &I);
196 Instruction *SPIRVEmitIntrinsics::visitSwitchInst(SwitchInst &I) { in visitSwitchInst()
410 isa<PHINode>(I) || isa<SwitchInst>(I)) in processInstrAfterVisit()
/openbsd-src/gnu/llvm/llvm/lib/IR/
H A DInstructions.cpp4485 void SwitchInst::init(Value *Value, BasicBlock *Default, unsigned NumReserved) { in init()
4499 SwitchInst::SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases, in SwitchInst() function in SwitchInst
4510 SwitchInst::SwitchInst(Value *Value, BasicBlock *Default, unsigned NumCases, in SwitchInst() function in SwitchInst
4517 SwitchInst::SwitchInst(const SwitchInst &SI) in SwitchInst() function in SwitchInst
4532 void SwitchInst::addCase(ConstantInt *OnVal, BasicBlock *Dest) { in addCase()
4547 SwitchInst::CaseIt SwitchInst::removeCase(CaseIt I) { in removeCase()
4572 void SwitchInst::growOperands() { in growOperands()
4613 SwitchInst::CaseIt
4614 SwitchInstProfUpdateWrapper::removeCase(SwitchInst::CaseIt I) { in removeCase()
4680 SwitchInstProfUpdateWrapper::getSuccessorWeight(const SwitchInst &SI, in getSuccessorWeight()
[all …]
/openbsd-src/gnu/llvm/llvm/lib/Transforms/IPO/
H A DCrossDSOCFI.cpp137 SwitchInst *SI = IRB.CreateSwitch(&CallSiteTypeId, TrapBB, TypeIds.size()); in buildCFICheck()
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAGBuilder.h83 class SwitchInst; variable
231 peelDominantCaseCluster(const SwitchInst &SI,
503 void visitSwitch(const SwitchInst &I);

12345