reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/Utils/SimplifyCFG.cpp
 5294   assert(SI->getNumCases() > 1 && "Degenerate switch?");
 5296   Function *Fn = SI->getParent()->getParent();
 5312   if (SI->getNumCases() < 3)
 5317   assert(!SI->cases().empty());
 5318   SwitchInst::CaseIt CI = SI->case_begin();
 5331   for (SwitchInst::CaseIt E = SI->case_end(); CI != E; ++CI) {
 5341     if (!GetCaseResults(SI, CaseVal, CI->getCaseSuccessor(), &CommonDest,
 5369       GetCaseResults(SI, nullptr, SI->getDefaultDest(), &CommonDest,
 5369       GetCaseResults(SI, nullptr, SI->getDefaultDest(), &CommonDest,
 5375     if (SI->getNumCases() < 4) // FIXME: Find best threshold value (benchmark).
 5387   if (!ShouldBuildLookupTable(SI, TableSize, TTI, DL, ResultTypes))
 5396   Builder.SetInsertPoint(SI);
 5399     TableIndex = SI->getCondition();
 5401     TableIndex = Builder.CreateSub(SI->getCondition(), MinCaseVal,
 5416       !isa<UnreachableInst>(SI->getDefaultDest()->getFirstNonPHIOrDbg());
 5428         Builder.CreateCondBr(Cmp, LookupBB, SI->getDefaultDest());
 5465     Builder.CreateCondBr(LoBit, LookupBB, SI->getDefaultDest());
 5468     AddPredecessorToBlock(SI->getDefaultDest(), MaskBB, SI->getParent());
 5468     AddPredecessorToBlock(SI->getDefaultDest(), MaskBB, SI->getParent());
 5474     SI->getDefaultDest()->removePredecessor(SI->getParent(),
 5474     SI->getDefaultDest()->removePredecessor(SI->getParent(),
 5516   for (unsigned i = 0, e = SI->getNumSuccessors(); i < e; ++i) {
 5517     BasicBlock *Succ = SI->getSuccessor(i);
 5519     if (Succ == SI->getDefaultDest())
 5521     Succ->removePredecessor(SI->getParent());
 5523   SI->eraseFromParent();