Lines Matching refs:Query

47 struct Query {
54 Query(const DataLayout &DL, const TargetLibraryInfo *tli,
61 static Value *SimplifyAndInst(Value *, Value *, const Query &, unsigned);
62 static Value *SimplifyBinOp(unsigned, Value *, Value *, const Query &,
65 const Query &, unsigned);
66 static Value *SimplifyCmpInst(unsigned, Value *, Value *, const Query &,
68 static Value *SimplifyOrInst(Value *, Value *, const Query &, unsigned);
69 static Value *SimplifyXorInst(Value *, Value *, const Query &, unsigned);
70 static Value *SimplifyTruncInst(Value *, Type *, const Query &, unsigned);
139 unsigned OpcToExpand, const Query &Q,
198 const Query &Q, unsigned MaxRecurse) {
297 const Query &Q, unsigned MaxRecurse) {
369 Value *RHS, const Query &Q,
451 const Query &Q, unsigned MaxRecurse) {
494 const Query &Q, unsigned MaxRecurse) {
531 const Query &Q, unsigned MaxRecurse) {
590 return ::SimplifyAddInst(Op0, Op1, isNSW, isNUW, Query(DL, TLI, DT, AC, CxtI),
663 const Query &Q, unsigned MaxRecurse) {
783 return ::SimplifySubInst(Op0, Op1, isNSW, isNUW, Query(DL, TLI, DT, AC, CxtI),
790 const Query &Q, unsigned MaxRecurse) {
832 const Query &Q, unsigned MaxRecurse) {
869 const Query &Q,
895 static Value *SimplifyMulInst(Value *Op0, Value *Op1, const Query &Q,
963 return ::SimplifyFAddInst(Op0, Op1, FMF, Query(DL, TLI, DT, AC, CxtI),
972 return ::SimplifyFSubInst(Op0, Op1, FMF, Query(DL, TLI, DT, AC, CxtI),
981 return ::SimplifyFMulInst(Op0, Op1, FMF, Query(DL, TLI, DT, AC, CxtI),
989 return ::SimplifyMulInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
996 const Query &Q, unsigned MaxRecurse) {
1081 static Value *SimplifySDivInst(Value *Op0, Value *Op1, const Query &Q,
1093 return ::SimplifySDivInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
1099 static Value *SimplifyUDivInst(Value *Op0, Value *Op1, const Query &Q,
1111 return ::SimplifyUDivInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
1116 const Query &Q, unsigned) {
1139 return ::SimplifyFDivInst(Op0, Op1, FMF, Query(DL, TLI, DT, AC, CxtI),
1146 const Query &Q, unsigned MaxRecurse) {
1206 static Value *SimplifySRemInst(Value *Op0, Value *Op1, const Query &Q,
1218 return ::SimplifySRemInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
1224 static Value *SimplifyURemInst(Value *Op0, Value *Op1, const Query &Q,
1236 return ::SimplifyURemInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
1241 const Query &, unsigned) {
1264 return ::SimplifyFRemInst(Op0, Op1, FMF, Query(DL, TLI, DT, AC, CxtI),
1298 const Query &Q, unsigned MaxRecurse) {
1336 bool isExact, const Query &Q,
1367 const Query &Q, unsigned MaxRecurse) {
1387 return ::SimplifyShlInst(Op0, Op1, isNSW, isNUW, Query(DL, TLI, DT, AC, CxtI),
1394 const Query &Q, unsigned MaxRecurse) {
1412 return ::SimplifyLShrInst(Op0, Op1, isExact, Query(DL, TLI, DT, AC, CxtI),
1419 const Query &Q, unsigned MaxRecurse) {
1446 return ::SimplifyAShrInst(Op0, Op1, isExact, Query(DL, TLI, DT, AC, CxtI),
1545 static Value *SimplifyAndInst(Value *Op0, Value *Op1, const Query &Q,
1646 return ::SimplifyAndInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
1704 static Value *SimplifyOrInst(Value *Op0, Value *Op1, const Query &Q,
1834 return ::SimplifyOrInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
1840 static Value *SimplifyXorInst(Value *Op0, Value *Op1, const Query &Q,
1891 return ::SimplifyXorInst(Op0, Op1, Query(DL, TLI, DT, AC, CxtI),
2120 const Query &Q, unsigned MaxRecurse) {
3029 return ::SimplifyICmpInst(Predicate, LHS, RHS, Query(DL, TLI, DT, AC, CxtI),
3036 const Query &Q, unsigned MaxRecurse) {
3145 return ::SimplifyFCmpInst(Predicate, LHS, RHS, Query(DL, TLI, DT, AC, CxtI),
3152 Value *FalseVal, const Query &Q,
3241 Query(DL, TLI, DT, AC, CxtI), RecursionLimit);
3247 const Query &Q, unsigned) {
3334 Ops, Query(DL, TLI, DT, AC, CxtI), RecursionLimit);
3340 ArrayRef<unsigned> Idxs, const Query &Q,
3370 return ::SimplifyInsertValueInst(Agg, Val, Idxs, Query(DL, TLI, DT, AC, CxtI),
3375 static Value *SimplifyPHINode(PHINode *PN, const Query &Q) {
3408 static Value *SimplifyTruncInst(Value *Op, Type *Ty, const Query &Q, unsigned) {
3419 return ::SimplifyTruncInst(Op, Ty, Query(DL, TLI, DT, AC, CxtI),
3428 const Query &Q, unsigned MaxRecurse) {
3497 const FastMathFlags &FMF, const Query &Q,
3515 return ::SimplifyBinOp(Opcode, LHS, RHS, Query(DL, TLI, DT, AC, CxtI),
3524 return ::SimplifyFPBinOp(Opcode, LHS, RHS, FMF, Query(DL, TLI, DT, AC, CxtI),
3531 const Query &Q, unsigned MaxRecurse) {
3541 return ::SimplifyCmpInst(Predicate, LHS, RHS, Query(DL, TLI, DT, AC, CxtI),
3563 const Query &Q, unsigned MaxRecurse) {
3579 const Query &Q, unsigned MaxRecurse) {
3617 return ::SimplifyCall(V, ArgBegin, ArgEnd, Query(DL, TLI, DT, AC, CxtI),
3626 Query(DL, TLI, DT, AC, CxtI), RecursionLimit);
3747 Result = SimplifyPHINode(cast<PHINode>(I), Query(DL, TLI, DT, AC, I));