Lines Matching defs:DCI
3083 // return DCI.CombineTo(N, NewSt, true);
5299 TargetLowering::DAGCombinerInfo &DCI) {
5312 return DCI.DAG.getNode(NVPTXISD::IMAD, SDLoc(N), VT, N0.getOperand(0),
5331 SDValue MAD = DCI.DAG.getNode(NVPTXISD::IMAD, SDLoc(N), VT,
5333 return DCI.DAG.getSelect(SDLoc(N), VT, N0->getOperand(0),
5343 TargetLowering::DAGCombinerInfo &DCI,
5348 &DCI.DAG.getTargetLoweringInfo());
5349 if (!TLI->allowFMA(DCI.DAG.getMachineFunction(), OptLevel))
5411 return DCI.DAG.getNode(ISD::FMA, SDLoc(N), VT, N0.getOperand(0),
5443 TargetLowering::DAGCombinerInfo &DCI,
5457 if (SDValue Result = PerformADDCombineWithOperands(N, N0, N1, DCI))
5461 return PerformADDCombineWithOperands(N, N1, N0, DCI);
5467 TargetLowering::DAGCombinerInfo &DCI,
5477 if (SDValue Result = PerformFADDCombineWithOperands(N, N0, N1, DCI, OptLevel))
5481 return PerformFADDCombineWithOperands(N, N1, N0, DCI, OptLevel);
5485 TargetLowering::DAGCombinerInfo &DCI) {
5523 DCI.CombineTo(N, Val, false);
5571 Val = DCI.DAG.getNode(ISD::ZERO_EXTEND, SDLoc(N),
5577 DCI.CombineTo(N, Val, AddTo);
5584 TargetLowering::DAGCombinerInfo &DCI,
5592 SelectionDAG &DAG = DCI.DAG;
5687 TargetLowering::DAGCombinerInfo &DCI) {
5716 RHS = DCI.DAG.getConstant(MulVal, DL, MulType);
5738 DCI.DAG.getNode(ISD::TRUNCATE, DL, DemotedVT, LHS);
5740 DCI.DAG.getNode(ISD::TRUNCATE, DL, DemotedVT, RHS);
5749 return DCI.DAG.getNode(Opc, DL, MulType, TruncLHS, TruncRHS);
5771 TargetLowering::DAGCombinerInfo &DCI) {
5774 return DCI.DAG.getNode(NVPTXISD::IMAD, DL, VT, X, Y, X);
5781 TargetLowering::DAGCombinerInfo &DCI) {
5801 SDValue NewMul = DCI.DAG.getNode(ISD::MUL, DL, VT, X, Y);
5803 return DCI.DAG.getNode(ISD::SELECT, DL, VT, Cond,
5810 TargetLowering::DAGCombinerInfo &DCI) {
5822 if (SDValue Res = combineMADConstOne(N0, N1, VT, DL, DCI))
5824 if (SDValue Res = combineMADConstOne(N1, N0, VT, DL, DCI))
5828 if (SDValue Res = combineMulSelectConstOne(N0, N1, VT, DL, DCI))
5830 if (SDValue Res = combineMulSelectConstOne(N1, N0, VT, DL, DCI))
5838 TargetLowering::DAGCombinerInfo &DCI,
5843 if (SDValue Ret = TryMULWIDECombine(N, DCI))
5848 return PerformMULCombineWithOperands(N, N0, N1, DCI);
5853 TargetLowering::DAGCombinerInfo &DCI,
5857 if (SDValue Ret = TryMULWIDECombine(N, DCI))
5865 TargetLowering::DAGCombinerInfo &DCI,
5883 SDValue CCNode = DCI.DAG.getNode(
5886 DL, DCI.DAG.getVTList(MVT::i1, MVT::i1), {A, B, N->getOperand(2)});
5887 return DCI.DAG.getNode(ISD::BUILD_VECTOR, DL, CCType, CCNode.getValue(0),
5892 TargetLowering::DAGCombinerInfo &DCI) {
5925 SDValue Result = DCI.DAG.getNode(
5927 DCI.DAG.getNode(
5928 ISD::SRA, DL, IVT, DCI.DAG.getNode(ISD::BITCAST, DL, IVT, Vector),
5929 DCI.DAG.getConstant(Index->getZExtValue() * EltBits, DL, IVT)));
5933 Result = DCI.DAG.getNode(ISD::BITCAST, DL, EltVT, Result);
5936 Result = DCI.DAG.getNode(ISD::ANY_EXTEND, DL, N->getValueType(0), Result);
5942 TargetLowering::DAGCombinerInfo &DCI) {
5957 SDValue C = DCI.DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, MVT::i1, VCond,
5958 DCI.DAG.getConstant(I, DL, MVT::i32));
5959 SDValue EA = DCI.DAG.getAnyExtOrTrunc(
5960 DCI.DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, MVT::i8, VA,
5961 DCI.DAG.getConstant(I, DL, MVT::i32)),
5963 SDValue EB = DCI.DAG.getAnyExtOrTrunc(
5964 DCI.DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, MVT::i8, VB,
5965 DCI.DAG.getConstant(I, DL, MVT::i32)),
5967 E.push_back(DCI.DAG.getAnyExtOrTrunc(
5968 DCI.DAG.getNode(ISD::SELECT, DL, MVT::i32, C, EA, EB), DL, MVT::i8));
5970 return DCI.DAG.getNode(ISD::BUILD_VECTOR, DL, MVT::v4i8, E);
5974 TargetLowering::DAGCombinerInfo &DCI) {
5975 SelectionDAG &DAG = DCI.DAG;
6006 return DCI.DAG.getMergeValues(
6007 {DCI.DAG.getBitcast(VT, DCI.DAG.getBuildVector(NewVT, DL, Elts)),
6013 DAGCombinerInfo &DCI) const {
6018 return PerformADDCombine(N, DCI, OptLevel);
6020 return PerformFADDCombine(N, DCI, OptLevel);
6022 return PerformMULCombine(N, DCI, OptLevel);
6024 return PerformSHLCombine(N, DCI, OptLevel);
6026 return PerformANDCombine(N, DCI);
6029 return PerformREMCombine(N, DCI, OptLevel);
6031 return PerformSETCCCombine(N, DCI, STI.getSmVersion());
6033 return PerformLOADCombine(N, DCI);
6043 return PerformEXTRACTCombine(N, DCI);
6045 return PerformVSELECTCombine(N, DCI);