Lines Matching defs:FactOrCheck
106 struct FactOrCheck {
130 FactOrCheck(EntryTy Ty, DomTreeNode *DTN, Instruction *Inst)
134 FactOrCheck(DomTreeNode *DTN, Use *U)
139 FactOrCheck(DomTreeNode *DTN, CmpInst::Predicate Pred, Value *Op0, Value *Op1,
144 static FactOrCheck getConditionFact(DomTreeNode *DTN, CmpInst::Predicate Pred,
147 return FactOrCheck(DTN, Pred, Op0, Op1, Precond);
150 static FactOrCheck getInstFact(DomTreeNode *DTN, Instruction *Inst) {
151 return FactOrCheck(EntryTy::InstFact, DTN, Inst);
154 static FactOrCheck getCheck(DomTreeNode *DTN, Use *U) {
155 return FactOrCheck(DTN, U);
158 static FactOrCheck getCheck(DomTreeNode *DTN, CallInst *CI) {
159 return FactOrCheck(EntryTy::InstCheck, DTN, CI);
188 SmallVector<FactOrCheck, 64> WorkList;
962 FactOrCheck::getConditionFact(DTN, CmpInst::ICMP_UGE, PN, StartValue));
965 FactOrCheck::getConditionFact(DTN, CmpInst::ICMP_SGE, PN, StartValue));
986 WorkList.push_back(FactOrCheck::getConditionFact(
989 WorkList.push_back(FactOrCheck::getConditionFact(
994 WorkList.push_back(FactOrCheck::getConditionFact(
997 WorkList.push_back(FactOrCheck::getConditionFact(
1021 WorkList.push_back(FactOrCheck::getConditionFact(
1025 WorkList.push_back(FactOrCheck::getConditionFact(
1029 WorkList.push_back(FactOrCheck::getConditionFact(
1032 WorkList.push_back(FactOrCheck::getConditionFact(
1048 WorkList.emplace_back(FactOrCheck::getConditionFact(
1067 WorkList.push_back(FactOrCheck::getCheck(DTN, &U));
1083 WorkList.emplace_back(FactOrCheck::getConditionFact(
1087 FactOrCheck::getInstFact(DT.getNode(I.getParent()), &I));
1096 FactOrCheck::getCheck(DT.getNode(&BB), cast<CallInst>(&I)));
1105 FactOrCheck::getCheck(DT.getNode(&BB), cast<CallInst>(&I)));
1112 WorkList.push_back(FactOrCheck::getInstFact(DT.getNode(&BB), &I));
1125 WorkList.emplace_back(FactOrCheck::getConditionFact(
1162 WorkList.emplace_back(FactOrCheck::getConditionFact(
1188 WorkList.emplace_back(FactOrCheck::getConditionFact(
1192 WorkList.emplace_back(FactOrCheck::getConditionFact(
1497 FactOrCheck &CB, ConstraintInfo &Info, Module *ReproducerModule,
1706 stable_sort(S.WorkList, [](const FactOrCheck &A, const FactOrCheck &B) {
1707 auto HasNoConstOp = [](const FactOrCheck &B) {
1736 for (FactOrCheck &CB : S.WorkList) {