Home | History | Annotate | Download | only in SelectionDAG

Lines Matching full:cases

302   // Handle cases such as i8 -> <1 x i1>
1442 /// If the set of cases should be emitted as a series of branches, return true.
1446 SelectionDAGBuilder::ShouldEmitAsBranches(const std::vector<CaseBlock> &Cases){
1447 if (Cases.size() != 2) return true;
1451 if ((Cases[0].CmpLHS == Cases[1].CmpLHS &&
1452 Cases[0].CmpRHS == Cases[1].CmpRHS) ||
1453 (Cases[0].CmpRHS == Cases[1].CmpLHS &&
1454 Cases[0].CmpLHS == Cases[1].CmpRHS)) {
1460 if (Cases[0].CmpRHS == Cases[1].CmpRHS &&
1461 Cases[0].CC == Cases[1].CC &&
1462 isa<Constant>(Cases[0].CmpRHS) &&
1463 cast<Constant>(Cases[0].CmpRHS)->isNullValue()) {
1464 if (Cases[0].CC == ISD::SETEQ && Cases[0].TrueBB == Cases[1].ThisBB)
1466 if (Cases[0].CC == ISD::SETNE && Cases[0].FalseBB == Cases[1].ThisBB)
1498 // If this condition is one of the special cases we handle, do special stuff
1531 // Allow some cases to be rejected.
1573 // handle common cases produced by branch lowering.
1660 // difference between smallest and largest cases.
1726 for (unsigned i = 0, e = B.Cases.size(); i != e; ++i)
1727 if (!isUIntN(VT.getSizeInBits(), B.Cases[i].Mask)) {
1751 MachineBasicBlock* MBB = B.Cases[0].ThisBB;
1918 // Size is the number of Cases represented by this range.
1935 // If any two of the cases has the same destination, and if one value
1939 // TODO: This could be extended to merge any 2 cases in switches with 3 cases.
1940 // TODO: Handle cases where CR.CaseBB != SwitchBB.
1990 // Order cases by weight so the most likely case will be checked first.
2046 // The false weight should be sum of all un-handled cases.
2211 // Size is the number of Cases represented by this range.
2430 DEBUG(dbgs() << "Cases:\n");
2458 /// Clusterify - Transform simple list of Cases into list of CaseRange's
2459 size_t SelectionDAGBuilder::Clusterify(CaseVector& Cases,
2469 // Start with "simple" cases
2490 Cases.push_back(Case(C.first.getLow().toConstantInt(),
2536 // If there are any non-default case statements, create a vector of Cases
2539 CaseVector Cases;
2540 size_t numCmps = Clusterify(Cases, SI);
2541 DEBUG(dbgs() << "Clusterify finished. Total clusters: " << Cases.size()
2553 CaseRange(Cases.begin(),Cases.end())));
2563 // If the range has few cases (two or less) emit a series of specific
4638 // Can't do anything with other non-AI cases yet.
4707 // We may expand this to cover more cases. One case where we have no
6470 // info is not there but there are cases it cannot get right.
6694 // this info is not there but there are cases it cannot get right.