Lines Matching defs:Cases
306 /// Transform simple list of \p SI's cases into list of CaseRange's \p Cases.
307 /// \post \p Cases wouldn't contain references to \p SI's default BB.
309 unsigned Clusterify(CaseVector &Cases, SwitchInst *SI) {
316 Cases.push_back(CaseRange(Case.getCaseValue(), Case.getCaseValue(),
321 llvm::sort(Cases, CaseCmp());
324 if (Cases.size() >= 2) {
325 CaseItr I = Cases.begin();
326 for (CaseItr J = std::next(I), E = Cases.end(); J != E; ++J) {
335 "Cases should be strictly ascending");
343 Cases.erase(std::next(I), Cases.end());
368 CaseVector Cases;
369 const unsigned NumSimpleCases = Clusterify(Cases, SI);
376 LLVM_DEBUG(dbgs() << "Clusterify finished. Total clusters: " << Cases.size()
378 << "\nCase clusters: " << Cases << "\n");
381 if (Cases.empty()) {
397 LowerBound = Cases.front().Low;
398 UpperBound = Cases.back().High;
422 const APInt &Low = Cases.front().Low->getValue();
423 const APInt &High = Cases.back().High->getValue();
443 for (const auto &I : Cases) {
492 llvm::erase_if(Cases,
496 if (Cases.empty()) {
514 SwitchConvert(Cases.begin(), Cases.end(), LowerBound, UpperBound, Val,