Lines Matching refs:getNode

2193     return DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(),  in getPICJumpTableRelocBase()
2372 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, Dl, ValLoc, ValArg, in lowerMasksToReg()
2383 ValToCopy = DAG.getNode(ISD::ANY_EXTEND, Dl, ValLoc, ValToCopy); in lowerMasksToReg()
2394 return DAG.getNode(ISD::ANY_EXTEND, Dl, ValLoc, ValArg); in lowerMasksToReg()
2413 Lo = DAG.getNode(ISD::EXTRACT_ELEMENT, Dl, MVT::i32, Arg, in Passv64i1ArgInRegs()
2415 Hi = DAG.getNode(ISD::EXTRACT_ELEMENT, Dl, MVT::i32, Arg, in Passv64i1ArgInRegs()
2467 ValToCopy = DAG.getNode(ISD::SIGN_EXTEND, dl, VA.getLocVT(), ValToCopy); in LowerReturn()
2469 ValToCopy = DAG.getNode(ISD::ZERO_EXTEND, dl, VA.getLocVT(), ValToCopy); in LowerReturn()
2474 ValToCopy = DAG.getNode(ISD::ANY_EXTEND, dl, VA.getLocVT(), ValToCopy); in LowerReturn()
2505 ValToCopy = DAG.getNode(ISD::FP_EXTEND, dl, MVT::f80, ValToCopy); in LowerReturn()
2517 ValToCopy = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2i64, in LowerReturn()
2619 if (Flag.getNode()) in LowerReturn()
2625 return DAG.getNode(opcode, dl, MVT::Other, RetOps); in LowerReturn()
2738 return DAG.getNode(ISD::CONCAT_VECTORS, Dl, MVT::v64i1, Lo, Hi); in getv64i1Argument()
2750 return DAG.getNode(ISD::SCALAR_TO_VECTOR, Dl, MVT::v1i1, ValReturned); in lowerRegToMasks()
2772 ValReturned = DAG.getNode(ISD::TRUNCATE, Dl, maskLen, ValReturned); in lowerRegToMasks()
2840 Val = DAG.getNode(ISD::FP_ROUND, dl, VA.getValVT(), Val, in LowerCallResult()
2851 Val = DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), Val); in LowerCallResult()
3055 DAG.getNode(ISD::ADD, dl, PtrVT, DAG.getFrameIndex(FI, PtrVT), in LowerMemArgument()
3086 ? DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VA.getValVT(), Val) in LowerMemArgument()
3087 : DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), Val)) in LowerMemArgument()
3262 ArgValue = DAG.getNode(ISD::AssertSext, dl, RegVT, ArgValue, in LowerFormalArguments()
3265 ArgValue = DAG.getNode(ISD::AssertZext, dl, RegVT, ArgValue, in LowerFormalArguments()
3273 ArgValue = DAG.getNode(X86ISD::MOVDQ2Q, dl, VA.getValVT(), ArgValue); in LowerFormalArguments()
3281 ArgValue = DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), ArgValue); in LowerFormalArguments()
3315 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Copy, Chain); in LowerFormalArguments()
3395 SDValue FIN = DAG.getNode(ISD::ADD, dl, getPointerTy(DAG.getDataLayout()), in LowerFormalArguments()
3417 MemOps.push_back(DAG.getNode(X86ISD::VASTART_SAVE_XMM_REGS, dl, in LowerFormalArguments()
3422 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, MemOps); in LowerFormalArguments()
3527 PtrOff = DAG.getNode(ISD::ADD, dl, getPointerTy(DAG.getDataLayout()), in LowerMemOpCallTo()
3548 return SDValue(OutRetAddr.getNode(), 1); in EmitTailCallLoadRetAddr()
3752 Arg = DAG.getNode(ISD::SIGN_EXTEND, dl, RegVT, Arg); in LowerCall()
3755 Arg = DAG.getNode(ISD::ZERO_EXTEND, dl, RegVT, Arg); in LowerCall()
3764 Arg = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2i64, Arg); in LowerCall()
3767 Arg = DAG.getNode(ISD::ANY_EXTEND, dl, RegVT, Arg); in LowerCall()
3823 if (!StackPtr.getNode()) in LowerCall()
3832 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, MemOpChains); in LowerCall()
3839 unsigned(X86::EBX), DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), in LowerCall()
3937 if (!StackPtr.getNode()) in LowerCall()
3940 Source = DAG.getNode(ISD::ADD, dl, getPointerTy(DAG.getDataLayout()), in LowerCall()
3955 Chain = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, MemOpChains2); in LowerCall()
3995 Callee = DAG.getNode(X86ISD::WrapperRIP, dl, in LowerCall()
4012 Callee = DAG.getNode(X86ISD::WrapperRIP, dl, in LowerCall()
4021 Callee = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i64, Callee); in LowerCall()
4097 if (InFlag.getNode()) in LowerCall()
4108 return DAG.getNode(X86ISD::TC_RETURN, dl, NodeTys, Ops); in LowerCall()
4112 Chain = DAG.getNode(X86ISD::NT_CALL, dl, NodeTys, Ops); in LowerCall()
4114 Chain = DAG.getNode(X86ISD::CALL, dl, NodeTys, Ops); in LowerCall()
4507 return Op.hasOneUse() && ISD::isNormalLoad(Op.getNode()); in MayFoldLoad()
4511 return Op.hasOneUse() && ISD::isNormalStore(*Op.getNode()->use_begin()); in MayFoldIntoStore()
4516 unsigned Opcode = Op.getNode()->use_begin()->getOpcode(); in MayFoldIntoZeroExtend()
4714 if (ISD::isNON_EXTLoad(LHS.getNode()) && in TranslateX86CC()
4715 !ISD::isNON_EXTLoad(RHS.getNode())) { in TranslateX86CC()
4876 if (!ISD::isConstantSplatVector(C.getNode(), MulC)) in decomposeMulByConstant()
5339 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, ResultVT, Vec, VecIdx); in extractSubVector()
5383 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, ResultVT, Result, Vec, VecIdx); in insertSubVector()
5408 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, VT, Res, Vec, in widenSubVector()
5457 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Subs); in SplitOpsAndApply()
5505 if (IdxVal == 0 && ISD::isBuildVectorAllZeros(Vec.getNode())) { in insert1BitVector()
5507 Op = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, in insert1BitVector()
5510 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, Op, ZeroIdx); in insert1BitVector()
5525 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, Undef, Vec, in insert1BitVector()
5527 Vec = DAG.getNode(X86ISD::KSHIFTR, dl, WideOpVT, Vec, ShiftBits); in insert1BitVector()
5528 Vec = DAG.getNode(X86ISD::KSHIFTL, dl, WideOpVT, Vec, ShiftBits); in insert1BitVector()
5530 SubVec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, in insert1BitVector()
5533 Op = DAG.getNode(ISD::OR, dl, WideOpVT, Vec, SubVec); in insert1BitVector()
5534 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, Op, ZeroIdx); in insert1BitVector()
5537 SubVec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, in insert1BitVector()
5542 SubVec = DAG.getNode(X86ISD::KSHIFTL, dl, WideOpVT, SubVec, in insert1BitVector()
5544 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, SubVec, ZeroIdx); in insert1BitVector()
5547 if (ISD::isBuildVectorAllZeros(Vec.getNode())) { in insert1BitVector()
5552 SubVec = DAG.getNode(X86ISD::KSHIFTL, dl, WideOpVT, SubVec, in insert1BitVector()
5555 SubVec = DAG.getNode(X86ISD::KSHIFTR, dl, WideOpVT, SubVec, in insert1BitVector()
5557 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, SubVec, ZeroIdx); in insert1BitVector()
5562 SubVec = DAG.getNode(X86ISD::KSHIFTL, dl, WideOpVT, SubVec, in insert1BitVector()
5567 Vec = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, SubVecVT, Vec, ZeroIdx); in insert1BitVector()
5568 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, in insert1BitVector()
5573 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, in insert1BitVector()
5577 Vec = DAG.getNode(X86ISD::KSHIFTL, dl, WideOpVT, Vec, ShiftBits); in insert1BitVector()
5578 Vec = DAG.getNode(X86ISD::KSHIFTR, dl, WideOpVT, Vec, ShiftBits); in insert1BitVector()
5580 Op = DAG.getNode(ISD::OR, dl, WideOpVT, Vec, SubVec); in insert1BitVector()
5581 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, Op, ZeroIdx); in insert1BitVector()
5589 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT, Undef, Vec, ZeroIdx); in insert1BitVector()
5591 Op = DAG.getNode(X86ISD::KSHIFTR, dl, WideOpVT, Vec, in insert1BitVector()
5594 Op = DAG.getNode(ISD::XOR, dl, WideOpVT, Op, SubVec); in insert1BitVector()
5597 Op = DAG.getNode(X86ISD::KSHIFTL, dl, WideOpVT, Op, in insert1BitVector()
5601 Op = DAG.getNode(X86ISD::KSHIFTR, dl, WideOpVT, Op, in insert1BitVector()
5604 Op = DAG.getNode(ISD::XOR, dl, WideOpVT, Vec, Op); in insert1BitVector()
5606 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, Op, ZeroIdx); in insert1BitVector()
5646 return DAG.getNode(Signed ? ISD::SIGN_EXTEND : ISD::ZERO_EXTEND, in getExtendInVec()
5649 return DAG.getNode(Signed ? ISD::SIGN_EXTEND_VECTOR_INREG in getExtendInVec()
5828 if (ISD::isBuildVectorOfConstantSDNodes(Op.getNode())) { in getTargetConstantBitsFromNode()
5845 if (ISD::isBuildVectorOfConstantFPSDNodes(Op.getNode())) { in getTargetConstantBitsFromNode()
6398 if (!getTargetShuffleMask(N.getNode(), VT, true, Ops, Mask, IsUnary)) in setTargetShuffleZeroElements()
6569 !N->isOnlyUserOf(Sub.getNode())) in getFauxShuffleMask()
6813 return getShuffleScalarElt(NewV.getNode(), Elt % NumElems, DAG, Depth+1); in getShuffleScalarElt()
6837 return getShuffleScalarElt(NewV.getNode(), Elt % NumElems, DAG, in getShuffleScalarElt()
6891 V = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4i32, V); in LowerBuildVectorAsInsert()
6892 V = DAG.getNode(X86ISD::VZEXT_MOVL, dl, MVT::v4i32, V); in LowerBuildVectorAsInsert()
6897 V = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, VT, V, Op.getOperand(i), in LowerBuildVectorAsInsert()
6939 DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i16, Op.getOperand(i - 1)); in LowerBuildVectorv16i8()
6942 ThisElt = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i16, Op.getOperand(i)); in LowerBuildVectorv16i8()
6943 ThisElt = DAG.getNode(ISD::SHL, dl, MVT::i16, ThisElt, in LowerBuildVectorv16i8()
6946 ThisElt = DAG.getNode(ISD::OR, dl, MVT::i16, ThisElt, LastElt); in LowerBuildVectorv16i8()
6954 V = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4i32, V); in LowerBuildVectorv16i8()
6955 V = DAG.getNode(X86ISD::VZEXT_MOVL, dl, MVT::v4i32, V); in LowerBuildVectorv16i8()
6958 V = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, MVT::v8i16, V, ThisElt, in LowerBuildVectorv16i8()
7000 SDValue Dup = DAG.getNode(X86ISD::MOVDDUP, DL, MVT::v2f64, NewBV); in LowerBuildVectorv4x32()
7028 if (!FirstNonZero.getNode()) { in LowerBuildVectorv4x32()
7034 assert(FirstNonZero.getNode() && "Unexpected build vector of all zeros!"); in LowerBuildVectorv4x32()
7080 if (!V1.getNode()) in LowerBuildVectorv4x32()
7088 assert(V1.getNode() && "Expected at least two non-zero elements!"); in LowerBuildVectorv4x32()
7100 SDValue Result = DAG.getNode(X86ISD::INSERTPS, DL, MVT::v4f32, V1, V2, in LowerBuildVectorv4x32()
7115 return DAG.getBitcast(VT, DAG.getNode(Opc, dl, ShVT, SrcOp, ShiftVal)); in getVShift()
7172 Ptr = DAG.getNode(ISD::ADD, DL, Ptr.getValueType(), Ptr, in LowerAsSplatVectorLoad()
7211 if (!Elt.getNode()) in EltsFromConsecutiveLoads()
7216 else if (X86::isZeroNode(Elt) || ISD::isBuildVectorAllZeros(Elt.getNode())) in EltsFromConsecutiveLoads()
7218 else if (ISD::isNON_EXTLoad(Elt.getNode())) { in EltsFromConsecutiveLoads()
7470 DAG.getNode(X86ISD::VBROADCASTM, dl, in lowerBuildVectorAsBroadcast()
7511 SDValue Brdcst = DAG.getNode(X86ISD::VBROADCAST, dl, in lowerBuildVectorAsBroadcast()
7535 SDValue Brdcst = DAG.getNode(X86ISD::VBROADCAST, dl, in lowerBuildVectorAsBroadcast()
7550 SDValue Brdcst = DAG.getNode(X86ISD::SUBV_BROADCAST, dl, VT, Ld); in lowerBuildVectorAsBroadcast()
7573 if (!ConstSplatVal && !BVOp->isOnlyUserOf(Ld.getNode())) in lowerBuildVectorAsBroadcast()
7619 return DAG.getNode(X86ISD::VBROADCAST, dl, VT, Ld); in lowerBuildVectorAsBroadcast()
7623 bool IsLoad = ISD::isNormalLoad(Ld.getNode()); in lowerBuildVectorAsBroadcast()
7628 return DAG.getNode(X86ISD::VBROADCAST, dl, VT, Ld); in lowerBuildVectorAsBroadcast()
7636 return DAG.getNode(X86ISD::VBROADCAST, dl, VT, Ld); in lowerBuildVectorAsBroadcast()
7642 return DAG.getNode(X86ISD::VBROADCAST, dl, VT, Ld); in lowerBuildVectorAsBroadcast()
7727 if (!VecIn1.getNode()) in buildFromShuffleMostly()
7730 if (!VecIn2.getNode()) in buildFromShuffleMostly()
7743 if (!VecIn1.getNode()) in buildFromShuffleMostly()
7746 VecIn2 = VecIn2.getNode() ? VecIn2 : DAG.getUNDEF(VT); in buildFromShuffleMostly()
7750 NV = DAG.getNode(ISD::INSERT_VECTOR_ELT, DL, VT, NV, Op.getOperand(Idx), in buildFromShuffleMostly()
7757 assert(ISD::isBuildVectorOfConstantSDNodes(Op.getNode()) && in ConvertI1VectorToInteger()
7779 if (ISD::isBuildVectorAllZeros(Op.getNode())) in LowerBUILD_VECTORvXi1()
7782 if (ISD::isBuildVectorAllOnes(Op.getNode())) in LowerBUILD_VECTORvXi1()
7785 if (ISD::isBuildVectorOfConstantSDNodes(Op.getNode())) { in LowerBUILD_VECTORvXi1()
7789 DAG.getBuildVector(MVT::v32i1, dl, Op.getNode()->ops().slice(0, 32)); in LowerBUILD_VECTORvXi1()
7791 DAG.getBuildVector(MVT::v32i1, dl, Op.getNode()->ops().slice(32, 32)); in LowerBUILD_VECTORvXi1()
7796 return DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v64i1, Lower, Upper); in LowerBUILD_VECTORvXi1()
7802 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, VT, ExtVec, in LowerBUILD_VECTORvXi1()
7849 DstVec = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, VT, ExtVec, in LowerBUILD_VECTORvXi1()
7855 DstVec = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, VT, DstVec, in LowerBUILD_VECTORvXi1()
8017 LO = DAG.getNode(X86Opcode, DL, NewVT, V0_LO, V0_HI); in ExpandHorizontalBinOp()
8019 HI = DAG.getNode(X86Opcode, DL, NewVT, V1_LO, V1_HI); in ExpandHorizontalBinOp()
8023 LO = DAG.getNode(X86Opcode, DL, NewVT, V0_LO, V1_LO); in ExpandHorizontalBinOp()
8026 HI = DAG.getNode(X86Opcode, DL, NewVT, V0_HI, V1_HI); in ExpandHorizontalBinOp()
8029 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, LO, HI); in ExpandHorizontalBinOp()
8210 return DAG.getNode(Opc, DL, VT, Opnd0, Opnd1, Opnd2); in lowerToAddSubOrFMAddSub()
8225 return DAG.getNode(X86ISD::ADDSUB, DL, VT, Opnd0, Opnd1); in lowerToAddSubOrFMAddSub()
8333 return DAG.getNode(HOpcode, SDLoc(BV), VT, V0, V1); in getHopForBuildVector()
8513 return DAG.getNode(Opcode, DL, VT, LHS, RHS); in lowerBuildVectorToBitOp()
8525 if (ISD::isBuildVectorAllZeros(Op.getNode())) { in materializeVectorConstant()
8537 if (Subtarget.hasSSE2() && ISD::isBuildVectorAllOnes(Op.getNode())) { in materializeVectorConstant()
8603 Idx = DAG.getNode(ISD::MUL, SDLoc(Idx), SrcVT, Idx, in createVariablePermute()
8605 Idx = DAG.getNode(ISD::ADD, SDLoc(Idx), SrcVT, Idx, in createVariablePermute()
8640 IndicesVec = DAG.getNode(ISD::ADD, DL, IndicesVT, IndicesVec, IndicesVec); in createVariablePermute()
8661 return DAG.getNode( in createVariablePermute()
8663 DAG.getNode(X86ISD::VPPERM, DL, MVT::v16i8, LoSrc, HiSrc, LoIdx), in createVariablePermute()
8664 DAG.getNode(X86ISD::VPPERM, DL, MVT::v16i8, LoSrc, HiSrc, HiIdx)); in createVariablePermute()
8668 SDValue LoLo = DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Lo, Lo); in createVariablePermute()
8669 SDValue HiHi = DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Hi, Hi); in createVariablePermute()
8678 DAG.getNode(X86ISD::PSHUFB, DL, VT, Ops[1], Idx), in createVariablePermute()
8679 DAG.getNode(X86ISD::PSHUFB, DL, VT, Ops[0], Idx), in createVariablePermute()
8710 return DAG.getBitcast(VT, DAG.getNode(X86ISD::VPERMIL2, DL, MVT::v8f32, in createVariablePermute()
8717 DAG.getNode(X86ISD::VPERMILPV, DL, MVT::v8f32, HiHi, IndicesVec), in createVariablePermute()
8718 DAG.getNode(X86ISD::VPERMILPV, DL, MVT::v8f32, LoLo, IndicesVec), in createVariablePermute()
8744 IndicesVec = DAG.getNode(ISD::ADD, DL, IndicesVT, IndicesVec, IndicesVec); in createVariablePermute()
8746 return DAG.getBitcast(VT, DAG.getNode(X86ISD::VPERMIL2, DL, MVT::v4f64, in createVariablePermute()
8753 DAG.getNode(X86ISD::VPERMILPV, DL, MVT::v4f64, HiHi, IndicesVec), in createVariablePermute()
8754 DAG.getNode(X86ISD::VPERMILPV, DL, MVT::v4f64, LoLo, IndicesVec), in createVariablePermute()
8791 ? DAG.getNode(Opcode, DL, ShuffleVT, IndicesVec, SrcVec) in createVariablePermute()
8792 : DAG.getNode(Opcode, DL, ShuffleVT, SrcVec, IndicesVec); in createVariablePermute()
8867 BuildVectorSDNode *BV = cast<BuildVectorSDNode>(Op.getNode()); in LowerBUILD_VECTOR()
8931 assert(!VarElt.getNode() && !InsIndex.getNode() && in LowerBUILD_VECTOR()
8953 return DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, VT, Ld, VarElt, InsIndex); in LowerBUILD_VECTOR()
8963 SDValue S2V = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, VarElt); in LowerBUILD_VECTOR()
8978 return DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, Item); in LowerBUILD_VECTOR()
8985 Item = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, Item); in LowerBUILD_VECTOR()
8993 Item = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, Item); in LowerBUILD_VECTOR()
8997 Item = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, ShufVT, Item); in LowerBUILD_VECTOR()
9002 Item = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4i32, Item); in LowerBUILD_VECTOR()
9008 Item = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4i32, Item); in LowerBUILD_VECTOR()
9021 DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, in LowerBUILD_VECTOR()
9035 Item = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, Item); in LowerBUILD_VECTOR()
9049 if (Op.getNode()->isOnlyUserOf(Item.getNode())) in LowerBUILD_VECTOR()
9092 return DAG.getBitcast(VT, DAG.getNode(X86ISD::VBROADCAST, dl, BcastVT, in LowerBUILD_VECTOR()
9118 SDValue V2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, in LowerBUILD_VECTOR()
9149 Ops[i] = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, Op.getOperand(i)); in LowerBUILD_VECTOR()
9191 Result = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, Op.getOperand(0)); in LowerBUILD_VECTOR()
9197 Result = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, VT, Result, in LowerBUILD_VECTOR()
9209 Ops[i] = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, Op.getOperand(i)); in LowerBUILD_VECTOR()
9252 if (ISD::isBuildVectorAllZeros(SubVec.getNode())) in LowerAVXCONCAT_VECTORS()
9266 SDValue Lo = DAG.getNode(ISD::CONCAT_VECTORS, dl, HalfVT, in LowerAVXCONCAT_VECTORS()
9268 SDValue Hi = DAG.getNode(ISD::CONCAT_VECTORS, dl, HalfVT, in LowerAVXCONCAT_VECTORS()
9270 return DAG.getNode(ISD::CONCAT_VECTORS, dl, ResVT, Lo, Hi); in LowerAVXCONCAT_VECTORS()
9283 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, ResVT, Vec, in LowerAVXCONCAT_VECTORS()
9298 if (!ISD::isBuildVectorAllZeros(Op.getOperand(i).getNode())) in isExpandWithZeros()
9319 if (ISD::isBuildVectorAllZeros(Op.getOperand(0).getNode()) && in isTypePromotionOfi1ZeroUpBits()
9370 if (ISD::isBuildVectorAllZeros(SubVec.getNode())) in LowerCONCAT_VECTORSvXi1()
9389 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, ResVT, Vec, SubVec, in LowerCONCAT_VECTORSvXi1()
9397 SDValue Lo = DAG.getNode(ISD::CONCAT_VECTORS, dl, HalfVT, in LowerCONCAT_VECTORSvXi1()
9399 SDValue Hi = DAG.getNode(ISD::CONCAT_VECTORS, dl, HalfVT, in LowerCONCAT_VECTORSvXi1()
9401 return DAG.getNode(ISD::CONCAT_VECTORS, dl, ResVT, Lo, Hi); in LowerCONCAT_VECTORSvXi1()
9409 SDValue Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, ResVT, in LowerCONCAT_VECTORSvXi1()
9413 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, ResVT, Vec, Op.getOperand(1), in LowerCONCAT_VECTORSvXi1()
9654 if (!ISD::isBuildVectorOfConstantSDNodes(Cond.getNode())) in createShuffleMaskFromVSELECT()
9732 bool V1IsZero = ISD::isBuildVectorAllZeros(V1.getNode()); in computeZeroableShuffleElements()
9733 bool V2IsZero = ISD::isBuildVectorAllZeros(V2.getNode()); in computeZeroableShuffleElements()
9879 VT, DAG.getNode(X86ISD::PSHUFB, DL, I8VT, DAG.getBitcast(I8VT, V), in lowerVectorShuffleWithPSHUFB()
9909 DAG.getNode(X86ISD::EXPAND, DL, VT, ExpandedVector), in lowerVectorShuffleToEXPAND()
10006 return DAG.getNode(X86ISD::UNPCKL, DL, VT, V1, V2); in lowerVectorShuffleWithUNPCK()
10011 return DAG.getNode(X86ISD::UNPCKH, DL, VT, V1, V2); in lowerVectorShuffleWithUNPCK()
10016 return DAG.getNode(X86ISD::UNPCKL, DL, VT, V2, V1); in lowerVectorShuffleWithUNPCK()
10020 return DAG.getNode(X86ISD::UNPCKH, DL, VT, V2, V1); in lowerVectorShuffleWithUNPCK()
10076 if (!ISD::isBuildVectorAllZeros(V2.getNode())) { in lowerVectorShuffleWithVPMOV()
10077 if (!ISD::isBuildVectorAllZeros(V1.getNode())) in lowerVectorShuffleWithVPMOV()
10115 return DAG.getNode(X86ISD::VTRUNC, DL, VT, Src); in lowerVectorShuffleWithVPMOV()
10180 return DAG.getNode(PackOpcode, DL, VT, DAG.getBitcast(PackVT, V1), in lowerVectorShuffleWithPACK()
10216 return DAG.getNode(ISD::AND, DL, VT, V, VMask); in lowerVectorShuffleAsBitMask()
10239 V1 = DAG.getNode(ISD::AND, DL, VT, V1, V1Mask); in lowerVectorShuffleAsBitBlend()
10240 V2 = DAG.getNode(X86ISD::ANDNP, DL, VT, V1Mask, V2); in lowerVectorShuffleAsBitBlend()
10241 return DAG.getNode(ISD::OR, DL, VT, V1, V2); in lowerVectorShuffleAsBitBlend()
10254 V1.isUndef() || ISD::isBuildVectorAllZeros(V1.getNode()); in matchVectorShuffleAsBlend()
10256 V2.isUndef() || ISD::isBuildVectorAllZeros(V2.getNode()); in matchVectorShuffleAsBlend()
10332 return DAG.getNode(X86ISD::BLENDI, DL, VT, V1, V2, in lowerVectorShuffleAsBlend()
10350 VT, DAG.getNode(X86ISD::BLENDI, DL, BlendVT, V1, V2, in lowerVectorShuffleAsBlend()
10362 DAG.getNode(X86ISD::BLENDI, DL, MVT::v8i16, V1, V2, in lowerVectorShuffleAsBlend()
10375 return DAG.getNode(X86ISD::BLENDI, DL, MVT::v16i16, V1, V2, in lowerVectorShuffleAsBlend()
10384 SDValue Lo = DAG.getNode(X86ISD::BLENDI, DL, MVT::v16i16, V1, V2, in lowerVectorShuffleAsBlend()
10386 SDValue Hi = DAG.getNode(X86ISD::BLENDI, DL, MVT::v16i16, V1, V2, in lowerVectorShuffleAsBlend()
10422 if (!ISD::isNormalLoad(V1.getNode()) && ISD::isNormalLoad(V2.getNode())) { in lowerVectorShuffleAsBlend()
10570 SDValue Unpck = DAG.getNode(UnpckOp, DL, VT, Ops); in lowerVectorShuffleAsUNPCKAndPermute()
10634 VT, DAG.getNode(X86ISD::PALIGNR, DL, ByteVT, DAG.getBitcast(ByteVT, Hi), in lowerVectorShuffleAsByteRotateAndPermute()
10844 VT, DAG.getNode(X86ISD::PALIGNR, DL, ByteVT, Lo, Hi, in lowerVectorShuffleAsByteRotate()
10859 SDValue LoShift = DAG.getNode(X86ISD::VSHLDQ, DL, MVT::v16i8, Lo, in lowerVectorShuffleAsByteRotate()
10861 SDValue HiShift = DAG.getNode(X86ISD::VSRLDQ, DL, MVT::v16i8, Hi, in lowerVectorShuffleAsByteRotate()
10864 DAG.getNode(ISD::OR, DL, MVT::v16i8, LoShift, HiShift)); in lowerVectorShuffleAsByteRotate()
10894 return DAG.getNode(X86ISD::VALIGN, DL, VT, Lo, Hi, in lowerVectorShuffleAsRotate()
11014 V = DAG.getNode(Opcode, DL, ShiftVT, V, in lowerVectorShuffleAsShift()
11149 return DAG.getNode(X86ISD::EXTRQI, DL, VT, V1, in lowerVectorShuffleWithSSE4A()
11154 return DAG.getNode(X86ISD::INSERTQI, DL, VT, V1 ? V1 : DAG.getUNDEF(VT), in lowerVectorShuffleWithSSE4A()
11226 VT, DAG.getNode(X86ISD::PSHUFD, DL, MVT::v4i32, in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11233 InputV = DAG.getNode(X86ISD::PSHUFD, DL, MVT::v4i32, in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11239 VT, DAG.getNode(OddEvenOp, DL, MVT::v8i16, in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11252 MVT::v2i64, DAG.getNode(X86ISD::EXTRQI, DL, VT, InputV, in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11262 MVT::v2i64, DAG.getNode(X86ISD::EXTRQI, DL, VT, InputV, in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11266 DAG.getNode(X86ISD::UNPCKL, DL, MVT::v2i64, Lo, Hi)); in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11282 VT, DAG.getNode(X86ISD::PSHUFB, DL, MVT::v16i8, InputV, in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11309 InputV = DAG.getNode(UnpackLoHi, DL, InputVT, InputV, Ext); in lowerVectorShuffleAsSpecificZeroOrAnyExtend()
11437 V = DAG.getNode(X86ISD::VZEXT_MOVL, DL, MVT::v2i64, V); in lowerVectorShuffleAsZeroOrAnyExtend()
11478 return ISD::isNON_EXTLoad(V.getNode()); in isShuffleFoldableLoad()
11520 V2S = DAG.getNode(ISD::ZERO_EXTEND, DL, MVT::i32, V2S); in lowerVectorShuffleAsElementInsertion()
11522 V2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, ExtVT, V2S); in lowerVectorShuffleAsElementInsertion()
11547 return DAG.getNode(EltVT == MVT::f32 ? X86ISD::MOVSS : X86ISD::MOVSD, DL, in lowerVectorShuffleAsElementInsertion()
11555 V2 = DAG.getNode(X86ISD::VZEXT_MOVL, DL, ExtVT, V2); in lowerVectorShuffleAsElementInsertion()
11570 V2 = DAG.getNode( in lowerVectorShuffleAsElementInsertion()
11625 Scalar = DAG.getNode(ISD::SRL, DL, Scalar.getValueType(), Scalar, in lowerVectorShuffleAsTruncBroadcast()
11628 return DAG.getNode(X86ISD::VBROADCAST, DL, VT, in lowerVectorShuffleAsTruncBroadcast()
11629 DAG.getNode(ISD::TRUNCATE, DL, EltVT, Scalar)); in lowerVectorShuffleAsTruncBroadcast()
11809 V = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, MVT::v2f64, in lowerVectorShuffleAsBroadcast()
11843 return DAG.getBitcast(VT, DAG.getNode(Opcode, DL, BroadcastVT, V)); in lowerVectorShuffleAsBroadcast()
11954 return DAG.getNode(X86ISD::INSERTPS, DL, MVT::v4f32, V1, V2, in lowerVectorShuffleAsInsertPS()
12027 VT, DAG.getNode(UnpackLo ? X86ISD::UNPCKL : X86ISD::UNPCKH, DL, in lowerVectorShuffleAsPermuteAndUnpack()
12040 if (ISD::isBuildVectorAllZeros(V1.getNode()) || in lowerVectorShuffleAsPermuteAndUnpack()
12041 ISD::isBuildVectorAllZeros(V2.getNode())) in lowerVectorShuffleAsPermuteAndUnpack()
12067 VT, DL, DAG.getNode(NumLoInputs == 0 ? X86ISD::UNPCKH : X86ISD::UNPCKL, in lowerVectorShuffleAsPermuteAndUnpack()
12104 return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v2f64, V1, in lowerV2F64VectorShuffle()
12108 return DAG.getNode( in lowerV2F64VectorShuffle()
12139 return DAG.getNode( in lowerV2F64VectorShuffle()
12141 DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, MVT::v2f64, V1S)); in lowerV2F64VectorShuffle()
12154 return DAG.getNode(X86ISD::SHUFP, DL, MVT::v2f64, V1, V2, in lowerV2F64VectorShuffle()
12188 DAG.getNode(X86ISD::PSHUFD, DL, MVT::v4i32, V1, in lowerV2I64VectorShuffle()
12309 V2 = DAG.getNode(X86ISD::SHUFP, DL, VT, V2, V1, in lowerVectorShuffleWithSHUFPS()
12348 V1 = DAG.getNode(X86ISD::SHUFP, DL, VT, V1, V2, in lowerVectorShuffleWithSHUFPS()
12360 return DAG.getNode(X86ISD::SHUFP, DL, VT, LowV, HighV, in lowerVectorShuffleWithSHUFPS()
12389 return DAG.getNode(X86ISD::MOVSLDUP, DL, MVT::v4f32, V1); in lowerV4F32VectorShuffle()
12391 return DAG.getNode(X86ISD::MOVSHDUP, DL, MVT::v4f32, V1); in lowerV4F32VectorShuffle()
12397 return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v4f32, V1, in lowerV4F32VectorShuffle()
12405 return DAG.getNode(X86ISD::MOVLHPS, DL, MVT::v4f32, V1, V1); in lowerV4F32VectorShuffle()
12407 return DAG.getNode(X86ISD::MOVHLPS, DL, MVT::v4f32, V1, V1); in lowerV4F32VectorShuffle()
12412 return DAG.getNode(X86ISD::SHUFP, DL, MVT::v4f32, V1, V1, in lowerV4F32VectorShuffle()
12446 return DAG.getNode(X86ISD::MOVLHPS, DL, MVT::v4f32, V1, V2); in lowerV4F32VectorShuffle()
12448 return DAG.getNode(X86ISD::MOVHLPS, DL, MVT::v4f32, V2, V1); in lowerV4F32VectorShuffle()
12500 return DAG.getNode(X86ISD::PSHUFD, DL, MVT::v4i32, V1, in lowerV4I32VectorShuffle()
12601 return DAG.getNode(X86ISD::PSHUFLW, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
12608 return DAG.getNode(X86ISD::PSHUFHW, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
12636 V = DAG.getNode(ShufWOp, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
12639 V = DAG.getNode(X86ISD::PSHUFD, DL, PSHUFDVT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
12788 V = DAG.getNode( in lowerV8I16GeneralSingleInputVectorShuffle()
12816 DAG.getNode(X86ISD::PSHUFD, DL, PSHUFDVT, DAG.getBitcast(PSHUFDVT, V), in lowerV8I16GeneralSingleInputVectorShuffle()
13051 V = DAG.getNode(X86ISD::PSHUFLW, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
13054 V = DAG.getNode(X86ISD::PSHUFHW, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
13059 DAG.getNode(X86ISD::PSHUFD, DL, PSHUFDVT, DAG.getBitcast(PSHUFDVT, V), in lowerV8I16GeneralSingleInputVectorShuffle()
13071 V = DAG.getNode(X86ISD::PSHUFLW, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
13079 V = DAG.getNode(X86ISD::PSHUFHW, DL, VT, V, in lowerV8I16GeneralSingleInputVectorShuffle()
13121 V1 = DAG.getNode(X86ISD::PSHUFB, DL, ShufVT, DAG.getBitcast(ShufVT, V1), in lowerVectorShuffleAsBlendOfPSHUFBs()
13124 V2 = DAG.getNode(X86ISD::PSHUFB, DL, ShufVT, DAG.getBitcast(ShufVT, V2), in lowerVectorShuffleAsBlendOfPSHUFBs()
13130 V = DAG.getNode(ISD::OR, DL, ShufVT, V1, V2); in lowerVectorShuffleAsBlendOfPSHUFBs()
13345 return DAG.getNode(X86ISD::VPERMV, DL, VT, MaskNode, V1); in lowerVectorShuffleWithPERMV()
13347 return DAG.getNode(X86ISD::VPERMV3, DL, VT, V1, MaskNode, V2); in lowerVectorShuffleWithPERMV()
13472 V1 = DAG.getNode(TargetLo ? X86ISD::UNPCKL : X86ISD::UNPCKH, DL, in lowerV16I8VectorShuffle()
13590 V1 = DAG.getNode(ISD::AND, DL, MVT::v16i8, V1, ByteClearMask); in lowerV16I8VectorShuffle()
13592 V2 = DAG.getNode(ISD::AND, DL, MVT::v16i8, V2, ByteClearMask); in lowerV16I8VectorShuffle()
13597 SDValue Result = DAG.getNode(X86ISD::PACKUS, DL, MVT::v16i8, V1, V2); in lowerV16I8VectorShuffle()
13600 Result = DAG.getNode(X86ISD::PACKUS, DL, MVT::v16i8, Result, Result); in lowerV16I8VectorShuffle()
13630 VLoHalf = DAG.getNode(ISD::AND, DL, MVT::v8i16, VLoHalf, in lowerV16I8VectorShuffle()
13649 MVT::v8i16, DAG.getNode(X86ISD::UNPCKL, DL, MVT::v16i8, V, Zero)); in lowerV16I8VectorShuffle()
13651 MVT::v8i16, DAG.getNode(X86ISD::UNPCKH, DL, MVT::v16i8, V, Zero)); in lowerV16I8VectorShuffle()
13657 return DAG.getNode(X86ISD::PACKUS, DL, MVT::v16i8, LoV, HiV); in lowerV16I8VectorShuffle()
13724 LoV = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, OrigSplitVT, V, in splitAndLowerVectorShuffle()
13726 HiV = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, OrigSplitVT, V, in splitAndLowerVectorShuffle()
13808 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Lo, Hi); in splitAndLowerVectorShuffle()
14012 SDValue LoV = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVT, V1, in lowerV2X128VectorShuffle()
14014 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, in lowerV2X128VectorShuffle()
14040 SDValue SubVec = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVT, in lowerV2X128VectorShuffle()
14043 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, V1, SubVec, in lowerV2X128VectorShuffle()
14053 return DAG.getNode(X86ISD::SHUF128, DL, VT, V1, V2, in lowerV2X128VectorShuffle()
14085 return DAG.getNode(X86ISD::VPERM2X128, DL, VT, V1, V2, in lowerV2X128VectorShuffle()
14286 SDValue Hi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, HalfVT, V1, in lowerVectorShuffleWithUndefHalf()
14288 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, DAG.getUNDEF(VT), Hi, in lowerVectorShuffleWithUndefHalf()
14296 SDValue Hi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, HalfVT, V1, in lowerVectorShuffleWithUndefHalf()
14298 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, DAG.getUNDEF(VT), Hi, in lowerVectorShuffleWithUndefHalf()
14376 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, HalfVT, V, in lowerVectorShuffleWithUndefHalf()
14383 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, DAG.getUNDEF(VT), V, in lowerVectorShuffleWithUndefHalf()
14619 return DAG.getNode(X86ISD::SHUFP, DL, VT, V1, V2, in lowerVectorShuffleWithSHUFPD()
14648 return DAG.getNode(X86ISD::MOVDDUP, DL, MVT::v4f64, V1); in lowerV4F64VectorShuffle()
14655 return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v4f64, V1, in lowerV4F64VectorShuffle()
14661 return DAG.getNode(X86ISD::VPERMI, DL, MVT::v4f64, V1, in lowerV4F64VectorShuffle()
14763 DAG.getNode(X86ISD::PSHUFD, DL, MVT::v8i32, in lowerV4I64VectorShuffle()
14770 return DAG.getNode(X86ISD::VPERMI, DL, MVT::v4i64, V1, in lowerV4I64VectorShuffle()
14852 return DAG.getNode(X86ISD::MOVSLDUP, DL, MVT::v8f32, V1); in lowerV8F32VectorShuffle()
14854 return DAG.getNode(X86ISD::MOVSHDUP, DL, MVT::v8f32, V1); in lowerV8F32VectorShuffle()
14857 return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v8f32, V1, in lowerV8F32VectorShuffle()
14881 return DAG.getNode(X86ISD::VPERMILPV, DL, MVT::v8f32, V1, VPermMask); in lowerV8F32VectorShuffle()
14884 return DAG.getNode(X86ISD::VPERMV, DL, MVT::v8f32, VPermMask, V1); in lowerV8F32VectorShuffle()
14969 return DAG.getNode(X86ISD::PSHUFD, DL, MVT::v8i32, V1, in lowerV8I32VectorShuffle()
15009 return DAG.getNode(X86ISD::VPERMV, DL, MVT::v8i32, VPermMask, V1); in lowerV8I32VectorShuffle()
15321 SDValue LoV = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVT, V1, in lowerV4X128VectorShuffle()
15323 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, in lowerV4X128VectorShuffle()
15335 SDValue SubVec = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVT, in lowerV4X128VectorShuffle()
15338 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, V1, SubVec, in lowerV4X128VectorShuffle()
15369 SDValue Subvec = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVT, V2, in lowerV4X128VectorShuffle()
15395 return DAG.getNode(X86ISD::SHUF128, DL, VT, Ops[0], Ops[1], in lowerV4X128VectorShuffle()
15412 return DAG.getNode(X86ISD::MOVDDUP, DL, MVT::v8f64, V1); in lowerV8F64VectorShuffle()
15421 return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v8f64, V1, in lowerV8F64VectorShuffle()
15427 return DAG.getNode(X86ISD::VPERMI, DL, MVT::v8f64, V1, in lowerV8F64VectorShuffle()
15474 return DAG.getNode(X86ISD::MOVSLDUP, DL, MVT::v16f32, V1); in lowerV16F32VectorShuffle()
15476 return DAG.getNode(X86ISD::MOVSHDUP, DL, MVT::v16f32, V1); in lowerV16F32VectorShuffle()
15479 return DAG.getNode(X86ISD::VPERMILPI, DL, MVT::v16f32, V1, in lowerV16F32VectorShuffle()
15500 return DAG.getNode(X86ISD::VPERMILPV, DL, MVT::v16f32, V1, VPermMask); in lowerV16F32VectorShuffle()
15531 DAG.getNode(X86ISD::PSHUFD, DL, MVT::v16i32, in lowerV8I64VectorShuffle()
15538 return DAG.getNode(X86ISD::VPERMI, DL, MVT::v8i64, V1, in lowerV8I64VectorShuffle()
15603 return DAG.getNode(X86ISD::PSHUFD, DL, MVT::v16i32, V1, in lowerV16I32VectorShuffle()
15883 SDValue Extract = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, ExtractVT, in lower1BitVectorShuffle()
15885 return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, in lower1BitVectorShuffle()
15898 return DAG.getNode(Opcode, DL, VT, V, in lower1BitVectorShuffle()
15936 V1 = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, V1); in lower1BitVectorShuffle()
15937 V2 = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, V2); in lower1BitVectorShuffle()
15947 return DAG.getNode(ISD::TRUNCATE, DL, VT, Shuffle); in lower1BitVectorShuffle()
16072 bool V2IsZero = !V2IsUndef && ISD::isBuildVectorAllZeros(V2.getNode()); in lowerVectorShuffle()
16183 if (ISD::isBuildVectorOfConstantSDNodes(Cond.getNode()) && in LowerVSELECT()
16184 ISD::isBuildVectorOfConstantSDNodes(LHS.getNode()) && in LowerVSELECT()
16185 ISD::isBuildVectorOfConstantSDNodes(RHS.getNode())) in LowerVSELECT()
16231 return DAG.getNode(ISD::VSELECT, dl, VT, Cond, LHS, RHS); in LowerVSELECT()
16256 SDValue Select = DAG.getNode(ISD::VSELECT, dl, CastVT, Cond, LHS, RHS); in LowerVSELECT()
16270 SDValue Extract = DAG.getNode(X86ISD::PEXTRB, dl, MVT::i32, in LowerEXTRACT_VECTOR_ELT_SSE4()
16272 return DAG.getNode(ISD::TRUNCATE, dl, VT, Extract); in LowerEXTRACT_VECTOR_ELT_SSE4()
16283 SDNode *User = *Op.getNode()->use_begin(); in LowerEXTRACT_VECTOR_ELT_SSE4()
16289 SDValue Extract = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::i32, in LowerEXTRACT_VECTOR_ELT_SSE4()
16325 SDValue Ext = DAG.getNode(ISD::SIGN_EXTEND, dl, ExtVecVT, Vec); in ExtractBitFromMaskVector()
16326 SDValue Elt = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, ExtEltVT, Ext, Idx); in ExtractBitFromMaskVector()
16327 return DAG.getNode(ISD::TRUNCATE, dl, EltVT, Elt); in ExtractBitFromMaskVector()
16339 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideVecVT, in ExtractBitFromMaskVector()
16345 Vec = DAG.getNode(X86ISD::KSHIFTR, dl, WideVecVT, Vec, in ExtractBitFromMaskVector()
16348 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, Op.getValueType(), Vec, in ExtractBitFromMaskVector()
16412 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, Op.getValueType(), Vec, in LowerEXTRACT_VECTOR_ELT()
16425 return DAG.getNode(ISD::TRUNCATE, dl, MVT::i16, in LowerEXTRACT_VECTOR_ELT()
16426 DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::i32, in LowerEXTRACT_VECTOR_ELT()
16430 SDValue Extract = DAG.getNode(X86ISD::PEXTRW, dl, MVT::i32, in LowerEXTRACT_VECTOR_ELT()
16432 return DAG.getNode(ISD::TRUNCATE, dl, VT, Extract); in LowerEXTRACT_VECTOR_ELT()
16442 if (VT.getSizeInBits() == 8 && Op->isOnlyUserOf(Vec.getNode())) { in LowerEXTRACT_VECTOR_ELT()
16446 SDValue Res = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::i32, in LowerEXTRACT_VECTOR_ELT()
16451 Res = DAG.getNode(ISD::SRL, dl, MVT::i32, Res, in LowerEXTRACT_VECTOR_ELT()
16453 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerEXTRACT_VECTOR_ELT()
16457 SDValue Res = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::i16, in LowerEXTRACT_VECTOR_ELT()
16462 Res = DAG.getNode(ISD::SRL, dl, MVT::i16, Res, in LowerEXTRACT_VECTOR_ELT()
16464 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerEXTRACT_VECTOR_ELT()
16474 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, VT, Vec, in LowerEXTRACT_VECTOR_ELT()
16490 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, VT, Vec, in LowerEXTRACT_VECTOR_ELT()
16513 SDValue ExtOp = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, ExtVecVT, in InsertBitToMaskVector()
16514 DAG.getNode(ISD::SIGN_EXTEND, dl, ExtVecVT, Vec), in InsertBitToMaskVector()
16515 DAG.getNode(ISD::SIGN_EXTEND, dl, ExtEltVT, Elt), Idx); in InsertBitToMaskVector()
16516 return DAG.getNode(ISD::TRUNCATE, dl, VecVT, ExtOp); in InsertBitToMaskVector()
16520 SDValue EltInVec = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v1i1, Elt); in InsertBitToMaskVector()
16522 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, VecVT, Vec, EltInVec, in InsertBitToMaskVector()
16571 SDValue N1Vec = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT, N1); in LowerINSERT_VECTOR_ELT()
16573 return DAG.getNode(X86ISD::BLENDI, dl, VT, N0, N1Vec, N2); in LowerINSERT_VECTOR_ELT()
16586 V = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, V.getValueType(), V, N1, in LowerINSERT_VECTOR_ELT()
16608 N1 = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::i32, N1); in LowerINSERT_VECTOR_ELT()
16611 return DAG.getNode(Opc, dl, VT, N0, N1, N2); in LowerINSERT_VECTOR_ELT()
16635 N1 = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4f32, N1); in LowerINSERT_VECTOR_ELT()
16636 return DAG.getNode(X86ISD::BLENDI, dl, VT, N0, N1, N2); in LowerINSERT_VECTOR_ELT()
16640 N1 = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4f32, N1); in LowerINSERT_VECTOR_ELT()
16641 return DAG.getNode(X86ISD::INSERTPS, dl, VT, N0, N1, N2); in LowerINSERT_VECTOR_ELT()
16670 Op = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VT128, Op.getOperand(0)); in LowerSCALAR_TO_VECTOR()
16681 SDValue AnyExt = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::i32, Op.getOperand(0)); in LowerSCALAR_TO_VECTOR()
16683 OpVT, DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4i32, AnyExt)); in LowerSCALAR_TO_VECTOR()
16719 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideVecVT, in LowerEXTRACT_SUBVECTOR()
16725 Vec = DAG.getNode(X86ISD::KSHIFTR, dl, WideVecVT, Vec, in LowerEXTRACT_SUBVECTOR()
16728 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, Op.getValueType(), Vec, in LowerEXTRACT_SUBVECTOR()
16769 Result = DAG.getNode(getGlobalWrapperKind(), DL, PtrVT, Result); in LowerConstantPool()
16773 DAG.getNode(ISD::ADD, DL, PtrVT, in LowerConstantPool()
16774 DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT), Result); in LowerConstantPool()
16790 Result = DAG.getNode(getGlobalWrapperKind(), DL, PtrVT, Result); in LowerJumpTable()
16795 DAG.getNode(ISD::ADD, DL, PtrVT, in LowerJumpTable()
16796 DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT), Result); in LowerJumpTable()
16814 Result = DAG.getNode(getGlobalWrapperKind(), DL, PtrVT, Result); in LowerExternalSymbol()
16819 DAG.getNode(ISD::ADD, DL, PtrVT, in LowerExternalSymbol()
16820 DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT), Result); in LowerExternalSymbol()
16842 Result = DAG.getNode(getGlobalWrapperKind(), dl, PtrVT, Result); in LowerBlockAddress()
16846 Result = DAG.getNode(ISD::ADD, dl, PtrVT, in LowerBlockAddress()
16847 DAG.getNode(X86ISD::GlobalBaseReg, dl, PtrVT), Result); in LowerBlockAddress()
16871 Result = DAG.getNode(getGlobalWrapperKind(GV, OpFlags), dl, PtrVT, Result); in LowerGlobalAddress()
16875 Result = DAG.getNode(ISD::ADD, dl, PtrVT, in LowerGlobalAddress()
16876 DAG.getNode(X86ISD::GlobalBaseReg, dl, PtrVT), Result); in LowerGlobalAddress()
16888 Result = DAG.getNode(ISD::ADD, dl, PtrVT, Result, in LowerGlobalAddress()
16918 Chain = DAG.getNode(CallType, dl, NodeTys, Ops); in GetTLSADDR()
16921 Chain = DAG.getNode(CallType, dl, NodeTys, Ops); in GetTLSADDR()
16939 DAG.getNode(X86ISD::GlobalBaseReg, in LowerToTLSGeneralDynamicModel32()
16972 DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT), InFlag); in LowerToTLSLocalDynamicModel()
16987 SDValue Offset = DAG.getNode(WrapperKind, dl, PtrVT, TGA); in LowerToTLSLocalDynamicModel()
16990 return DAG.getNode(ISD::ADD, dl, PtrVT, Offset, Base); in LowerToTLSLocalDynamicModel()
17030 SDValue Offset = DAG.getNode(WrapperKind, dl, PtrVT, TGA); in LowerToTLSExecModel()
17034 Offset = DAG.getNode(ISD::ADD, dl, PtrVT, in LowerToTLSExecModel()
17035 DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT), in LowerToTLSExecModel()
17045 return DAG.getNode(ISD::ADD, dl, PtrVT, ThreadPointer, Offset); in LowerToTLSExecModel()
17095 SDValue Offset = DAG.getNode(WrapperKind, DL, PtrVT, Result); in LowerGlobalTLSAddress()
17099 Offset = DAG.getNode(ISD::ADD, DL, PtrVT, in LowerGlobalTLSAddress()
17100 DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT), in LowerGlobalTLSAddress()
17109 Chain = DAG.getNode(X86ISD::TLSCALL, DL, NodeTys, Args); in LowerGlobalTLSAddress()
17174 IDX = DAG.getNode(ISD::SHL, dl, PtrVT, IDX, Scale); in LowerGlobalTLSAddress()
17176 res = DAG.getNode(ISD::ADD, dl, PtrVT, ThreadPointer, IDX); in LowerGlobalTLSAddress()
17185 SDValue Offset = DAG.getNode(X86ISD::Wrapper, dl, PtrVT, TGA); in LowerGlobalTLSAddress()
17189 return DAG.getNode(ISD::ADD, dl, PtrVT, res, Offset); in LowerGlobalTLSAddress()
17210 SDValue SafeShAmt = DAG.getNode(ISD::AND, dl, MVT::i8, ShAmt, in LowerShiftParts()
17212 SDValue Tmp1 = isSRA ? DAG.getNode(ISD::SRA, dl, VT, ShOpHi, in LowerShiftParts()
17218 Tmp2 = DAG.getNode(ISD::FSHL, dl, VT, ShOpHi, ShOpLo, ShAmt); in LowerShiftParts()
17219 Tmp3 = DAG.getNode(ISD::SHL, dl, VT, ShOpLo, SafeShAmt); in LowerShiftParts()
17221 Tmp2 = DAG.getNode(ISD::FSHR, dl, VT, ShOpHi, ShOpLo, ShAmt); in LowerShiftParts()
17222 Tmp3 = DAG.getNode(isSRA ? ISD::SRA : ISD::SRL, dl, VT, ShOpHi, SafeShAmt); in LowerShiftParts()
17228 SDValue AndNode = DAG.getNode(ISD::AND, dl, MVT::i8, ShAmt, in LowerShiftParts()
17235 Hi = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp3, Tmp2); in LowerShiftParts()
17236 Lo = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp1, Tmp3); in LowerShiftParts()
17238 Lo = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp3, Tmp2); in LowerShiftParts()
17239 Hi = DAG.getNode(ISD::SELECT, dl, VT, Cond, Tmp1, Tmp3); in LowerShiftParts()
17267 return DAG.getNode(IsFSHR ? X86ISD::VSHRD : X86ISD::VSHLD, DL, VT, in LowerFunnelShift()
17271 return DAG.getNode(IsFSHR ? X86ISD::VSHRDV : X86ISD::VSHLDV, DL, VT, in LowerFunnelShift()
17288 Amt = DAG.getNode(ISD::AND, DL, Amt.getValueType(), Amt, in LowerFunnelShift()
17292 return DAG.getNode(SHDOp, DL, VT, Op0, Op1, Amt); in LowerFunnelShift()
17317 SDValue InVec = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VecInVT, Src); in LowerI64IntToFP_AVX512DQ()
17318 SDValue CvtVec = DAG.getNode(Op.getOpcode(), dl, VecVT, InVec); in LowerI64IntToFP_AVX512DQ()
17319 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, VT, CvtVec, in LowerI64IntToFP_AVX512DQ()
17332 return DAG.getNode(X86ISD::CVTSI2P, dl, VT, in LowerSINT_TO_FP()
17333 DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i32, Src, in LowerSINT_TO_FP()
17467 SDValue XR1 = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2i64, in LowerUINT_TO_FP_i64()
17482 SDValue Sub = DAG.getNode(ISD::FSUB, dl, MVT::v2f64, XR2F, CLod1); in LowerUINT_TO_FP_i64()
17487 Result = DAG.getNode(X86ISD::FHADD, dl, MVT::v2f64, Sub, Sub); in LowerUINT_TO_FP_i64()
17490 Result = DAG.getNode(ISD::FADD, dl, MVT::v2f64, Shuffle, Sub); in LowerUINT_TO_FP_i64()
17493 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::f64, Result, in LowerUINT_TO_FP_i64()
17506 SDValue Load = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v4i32, in LowerUINT_TO_FP_i32()
17512 Load = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::f64, in LowerUINT_TO_FP_i32()
17517 SDValue Or = DAG.getNode( in LowerUINT_TO_FP_i32()
17520 DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2f64, Load)), in LowerUINT_TO_FP_i32()
17522 DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2f64, Bias))); in LowerUINT_TO_FP_i32()
17524 DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::f64, in LowerUINT_TO_FP_i32()
17529 SDValue Sub = DAG.getNode(ISD::FSUB, dl, MVT::f64, Or, Bias); in LowerUINT_TO_FP_i32()
17545 N0 = DAG.getNode(ISD::CONCAT_VECTORS, DL, MVT::v4i32, N0, in lowerUINT_TO_FP_v2i32()
17549 return DAG.getNode(X86ISD::CVTUI2P, DL, MVT::v2f64, N0); in lowerUINT_TO_FP_v2i32()
17560 SDValue HI = DAG.getNode(ISD::SRL, DL, MVT::v4i32, N0, HalfWord); in lowerUINT_TO_FP_v2i32()
17561 SDValue LO = DAG.getNode(ISD::AND, DL, MVT::v4i32, N0, HalfWordMask); in lowerUINT_TO_FP_v2i32()
17563 SDValue fHI = DAG.getNode(X86ISD::CVTSI2P, DL, MVT::v2f64, HI); in lowerUINT_TO_FP_v2i32()
17564 fHI = DAG.getNode(ISD::FMUL, DL, MVT::v2f64, fHI, TWOHW); in lowerUINT_TO_FP_v2i32()
17565 SDValue fLO = DAG.getNode(X86ISD::CVTSI2P, DL, MVT::v2f64, LO); in lowerUINT_TO_FP_v2i32()
17568 return DAG.getNode(ISD::FADD, DL, MVT::v2f64, fHI, fLO); in lowerUINT_TO_FP_v2i32()
17621 SDValue HighShift = DAG.getNode(ISD::SRL, DL, VecIntVT, V, VecCstShift); in lowerUINT_TO_FP_vXi32()
17631 Low = DAG.getNode(X86ISD::BLENDI, DL, VecI16VT, VecBitcast, in lowerUINT_TO_FP_vXi32()
17639 High = DAG.getNode(X86ISD::BLENDI, DL, VecI16VT, VecShiftBitcast, in lowerUINT_TO_FP_vXi32()
17644 SDValue LowAnd = DAG.getNode(ISD::AND, DL, VecIntVT, V, VecCstMask); in lowerUINT_TO_FP_vXi32()
17645 Low = DAG.getNode(ISD::OR, DL, VecIntVT, LowAnd, VecCstLow); in lowerUINT_TO_FP_vXi32()
17648 High = DAG.getNode(ISD::OR, DL, VecIntVT, HighShift, VecCstHigh); in lowerUINT_TO_FP_vXi32()
17659 DAG.getNode(ISD::FADD, DL, VecFloatVT, HighBitcast, VecCstFAdd); in lowerUINT_TO_FP_vXi32()
17662 return DAG.getNode(ISD::FADD, DL, VecFloatVT, LowBitcast, FHigh); in lowerUINT_TO_FP_vXi32()
17763 FudgePtr = DAG.getNode(ISD::ADD, dl, PtrVT, FudgePtr, Offset); in LowerUINT_TO_FP()
17773 SDValue Add = DAG.getNode(ISD::FADD, dl, MVT::f80, Fild, Fudge); in LowerUINT_TO_FP()
17774 return DAG.getNode(ISD::FP_ROUND, dl, DstVT, Add, in LowerUINT_TO_FP()
17889 SDValue Sub = DAG.getNode(ISD::FSUB, DL, TheVT, Value, ThreshVal); in FP_TO_INTHelper()
17935 High32 = DAG.getNode(ISD::XOR, DL, MVT::i32, High32, Adjust); in FP_TO_INTHelper()
17940 Low32 = DAG.getNode(ISD::ZERO_EXTEND, DL, MVT::i64, Low32); in FP_TO_INTHelper()
17941 High32 = DAG.getNode(ISD::ANY_EXTEND, DL, MVT::i64, High32); in FP_TO_INTHelper()
17942 High32 = DAG.getNode(ISD::SHL, DL, MVT::i64, High32, in FP_TO_INTHelper()
17944 SDValue Result = DAG.getNode(ISD::OR, DL, MVT::i64, High32, Low32); in FP_TO_INTHelper()
17951 ? DAG.getNode(ISD::BUILD_PAIR, DL, MVT::i64, ResultOps) in FP_TO_INTHelper()
17987 In = DAG.getNode(ISD::CONCAT_VECTORS, SDLoc(Op), in LowerAVXExtend()
17990 return DAG.getNode(ISD::ZERO_EXTEND_VECTOR_INREG, dl, VT, In); in LowerAVXExtend()
18012 SDValue OpLo = DAG.getNode(ISD::ZERO_EXTEND_VECTOR_INREG, dl, HalfVT, In); in LowerAVXExtend()
18020 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, OpLo, OpHi); in LowerAVXExtend()
18027 SDValue Lo = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v8i1, In, in SplitAndExtendv16i1()
18029 SDValue Hi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v8i1, In, in SplitAndExtendv16i1()
18031 Lo = DAG.getNode(ExtOpc, dl, MVT::v8i16, Lo); in SplitAndExtendv16i1()
18032 Hi = DAG.getNode(ExtOpc, dl, MVT::v8i16, Hi); in SplitAndExtendv16i1()
18033 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v16i16, Lo, Hi); in SplitAndExtendv16i1()
18034 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in SplitAndExtendv16i1()
18050 SDValue Extend = DAG.getNode(ISD::SIGN_EXTEND, DL, VT, In); in LowerZERO_EXTEND_Mask()
18051 return DAG.getNode(ISD::SRL, DL, VT, Extend, in LowerZERO_EXTEND_Mask()
18070 In = DAG.getNode(ISD::INSERT_SUBVECTOR, DL, InVT, DAG.getUNDEF(InVT), in LowerZERO_EXTEND_Mask()
18084 SelectedVal = DAG.getNode(ISD::TRUNCATE, DL, WideVT, SelectedVal); in LowerZERO_EXTEND_Mask()
18089 SelectedVal = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, SelectedVal, in LowerZERO_EXTEND_Mask()
18160 SDValue Res = DAG.getNode(Opcode, DL, OutVT, In, In); in truncateVectorWithPACK()
18178 SDValue Res = DAG.getNode(Opcode, DL, OutVT, Lo, Hi); in truncateVectorWithPACK()
18187 SDValue Res = DAG.getNode(Opcode, DL, OutVT, Lo, Hi); in truncateVectorWithPACK()
18210 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, DL, PackedVT, Lo, Hi); in truncateVectorWithPACK()
18233 In = DAG.getNode(ISD::SHL, DL, ExtVT, in LowerTruncateVecI1()
18259 In = DAG.getNode(ISD::SIGN_EXTEND, DL, InVT, In); in LowerTruncateVecI1()
18265 Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::v8i1, Lo); in LowerTruncateVecI1()
18266 Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::v8i1, Hi); in LowerTruncateVecI1()
18267 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Lo, Hi); in LowerTruncateVecI1()
18274 In = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, In); in LowerTruncateVecI1()
18281 In = DAG.getNode(ISD::SHL, DL, InVT, In, in LowerTruncateVecI1()
18343 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, In, in LowerTRUNCATE()
18347 SDValue OpLo = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v2i64, In, in LowerTRUNCATE()
18349 SDValue OpHi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v2i64, In, in LowerTRUNCATE()
18372 In = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v2i64, In, in LowerTRUNCATE()
18377 SDValue OpLo = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v4i32, In, in LowerTRUNCATE()
18380 SDValue OpHi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v4i32, In, in LowerTRUNCATE()
18404 In = DAG.getNode(ISD::AND, DL, InVT, In, DAG.getConstant(255, DL, InVT)); in LowerTRUNCATE()
18406 SDValue InLo = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v8i16, In, in LowerTRUNCATE()
18408 SDValue InHi = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, MVT::v8i16, In, in LowerTRUNCATE()
18410 return DAG.getNode(X86ISD::PACKUS, DL, VT, InLo, InHi); in LowerTRUNCATE()
18427 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, V, in LowerTRUNCATE()
18448 Src = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, MVT::v8f64, in LowerFP_TO_INT()
18452 SDValue Res = DAG.getNode(Opc, dl, ResVT, Src); in LowerFP_TO_INT()
18453 Res = DAG.getNode(ISD::TRUNCATE, dl, TruncVT, Res); in LowerFP_TO_INT()
18454 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v2i1, Res, in LowerFP_TO_INT()
18460 return DAG.getNode(IsSigned ? X86ISD::CVTTP2SI : X86ISD::CVTTP2UI, dl, VT, in LowerFP_TO_INT()
18461 DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, Src, in LowerFP_TO_INT()
18474 if (!FIST.getNode()) in LowerFP_TO_INT()
18477 if (StackSlot.getNode()) in LowerFP_TO_INT()
18493 return DAG.getNode(X86ISD::VFPEXT, DL, VT, in LowerFP_EXTEND()
18494 DAG.getNode(ISD::CONCAT_VECTORS, DL, MVT::v4f32, in LowerFP_EXTEND()
18576 SDValue HOp = DAG.getNode(HOpcode, DL, X.getValueType(), X, X); in lowerAddSubToHorizontalOp()
18577 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, Op.getSimpleValueType(), HOp, in lowerAddSubToHorizontalOp()
18642 return DAG.getNode(LogicOp, dl, LogicVT, Operand, Mask); in LowerFABSorFNEG()
18646 Operand = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, LogicVT, Operand); in LowerFABSorFNEG()
18647 SDValue LogicNode = DAG.getNode(LogicOp, dl, LogicVT, Operand, Mask); in LowerFABSorFNEG()
18648 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, VT, LogicNode, in LowerFABSorFNEG()
18660 Sign = DAG.getNode(ISD::FP_EXTEND, dl, VT, Sign); in LowerFCOPYSIGN()
18664 Sign = DAG.getNode(ISD::FP_ROUND, dl, VT, Sign, DAG.getIntPtrConstant(1, dl)); in LowerFCOPYSIGN()
18695 Sign = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, LogicVT, Sign); in LowerFCOPYSIGN()
18696 SDValue SignBit = DAG.getNode(X86ISD::FAND, dl, LogicVT, Sign, SignMask); in LowerFCOPYSIGN()
18709 Mag = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, LogicVT, Mag); in LowerFCOPYSIGN()
18710 MagBits = DAG.getNode(X86ISD::FAND, dl, LogicVT, Mag, MagMask); in LowerFCOPYSIGN()
18714 SDValue Or = DAG.getNode(X86ISD::FOR, dl, LogicVT, MagBits, SignBit); in LowerFCOPYSIGN()
18715 return !IsFakeVector ? Or : DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, VT, Or, in LowerFCOPYSIGN()
18730 SDValue Res = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VecVT, N0); in LowerFGETSIGN()
18731 Res = DAG.getNode(X86ISD::MOVMSK, dl, MVT::i32, Res); in LowerFGETSIGN()
18733 Res = DAG.getNode(ISD::AND, dl, VT, Res, DAG.getConstant(1, dl, VT)); in LowerFGETSIGN()
18740 return DAG.getNode(X86ISD::SETCC, dl, MVT::i8, in getSETCC()
18757 SDNode *N = Op.getNode(); in LowerVectorAllZeroTest()
18831 VecIns.push_back(DAG.getNode(ISD::OR, DL, TestVT, LHS, RHS)); in LowerVectorAllZeroTest()
18836 return DAG.getNode(X86ISD::PTEST, DL, MVT::i32, in LowerVectorAllZeroTest()
18884 if (Op.getNode()->getFlags().hasNoSignedWrap()) in EmitTest()
18899 return DAG.getNode(X86ISD::CMP, dl, MVT::i32, Op, in EmitTest()
18925 for (SDNode::use_iterator UI = Op.getNode()->use_begin(), in EmitTest()
18926 UE = Op.getNode()->use_end(); UI != UE; ++UI) in EmitTest()
18949 return SDValue(Op.getNode(), 1); in EmitTest()
18957 return DAG.getNode(X86ISD::CMP, dl, MVT::i32, Op, in EmitTest()
18963 SDValue New = DAG.getNode(Opcode, dl, VTs, Ops); in EmitTest()
18964 DAG.ReplaceAllUsesOfValueWith(SDValue(Op.getNode(), 0), New); in EmitTest()
18965 return SDValue(New.getNode(), 1); in EmitTest()
18988 Op0 = DAG.getNode(ExtendOp, dl, MVT::i32, Op0); in EmitCmp()
18989 Op1 = DAG.getNode(ExtendOp, dl, MVT::i32, Op1); in EmitCmp()
18993 SDValue Sub = DAG.getNode(X86ISD::SUB, dl, VTs, Op0, Op1); in EmitCmp()
18994 return SDValue(Sub.getNode(), 1); in EmitCmp()
18997 return DAG.getNode(X86ISD::CMP, dl, MVT::i32, Op0, Op1); in EmitCmp()
19016 SDValue TruncFPSW = DAG.getNode(ISD::TRUNCATE, dl, MVT::i16, Cmp); in ConvertCmpIfNecessary()
19017 SDValue FNStSW = DAG.getNode(X86ISD::FNSTSW16r, dl, MVT::i16, TruncFPSW); in ConvertCmpIfNecessary()
19018 SDValue Srl = DAG.getNode(ISD::SRL, dl, MVT::i16, FNStSW, in ConvertCmpIfNecessary()
19020 SDValue TruncSrl = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Srl); in ConvertCmpIfNecessary()
19024 return DAG.getNode(X86ISD::SAHF, dl, MVT::i32, TruncSrl); in ConvertCmpIfNecessary()
19068 return DAG.getNode(Opcode, SDLoc(Op), VT, Op); in getSqrtEstimate()
19102 return DAG.getNode(Opcode, SDLoc(Op), VT, Op); in getRecipEstimate()
19169 if (!Src.getNode()) in LowerAndToBT()
19178 Src = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::i32, Src); in LowerAndToBT()
19186 Src = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, Src); in LowerAndToBT()
19191 BitNo = DAG.getNode(ISD::ANY_EXTEND, dl, Src.getValueType(), BitNo); in LowerAndToBT()
19195 return DAG.getNode(X86ISD::BT, dl, MVT::i32, Src, BitNo); in LowerAndToBT()
19268 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, in Lower256IntVSETCC()
19269 DAG.getNode(Op.getOpcode(), dl, NewVT, LHS1, RHS1, CC), in Lower256IntVSETCC()
19270 DAG.getNode(Op.getOpcode(), dl, NewVT, LHS2, RHS2, CC)); in Lower256IntVSETCC()
19290 ISD::isBuildVectorAllZeros(Op0.getNode())) in LowerIntVSETCC_AVX512()
19306 auto *BV = dyn_cast<BuildVectorSDNode>(V.getNode()); in decrementVectorConstant()
19370 SDValue Result = DAG.getNode(ISD::USUBSAT, dl, VT, Op0, Op1); in LowerVSETCCWithSUBUS()
19371 return DAG.getNode(X86ISD::PCMPEQ, dl, VT, Result, in LowerVSETCCWithSUBUS()
19422 SDValue Cmp0 = DAG.getNode(Opc, dl, VT, Op0, Op1, in LowerVSETCC()
19424 SDValue Cmp1 = DAG.getNode(Opc, dl, VT, Op0, Op1, in LowerVSETCC()
19426 Cmp = DAG.getNode(CombineOpc, dl, VT, Cmp0, Cmp1); in LowerVSETCC()
19429 Cmp = DAG.getNode(Opc, dl, VT, Op0, Op1, in LowerVSETCC()
19493 return DAG.getNode(Opc, dl, VT, Op0, Op1, in LowerVSETCC()
19499 if (Cond == ISD::SETNE && ISD::isBuildVectorAllZeros(Op1.getNode())) { in LowerVSETCC()
19521 ISD::isConstantSplatVector(Op1.getNode(), ConstValue)) { in LowerVSETCC()
19565 SDValue Result = DAG.getNode(Opc, dl, VT, Op0, Op1); in LowerVSETCC()
19566 Result = DAG.getNode(X86ISD::PCMPEQ, dl, VT, Op0, Result); in LowerVSETCC()
19607 Op0 = DAG.getNode(ISD::XOR, dl, MVT::v2i64, Op0, SB); in LowerVSETCC()
19608 Op1 = DAG.getNode(ISD::XOR, dl, MVT::v2i64, Op1, SB); in LowerVSETCC()
19615 SDValue GT = DAG.getNode(X86ISD::PCMPGT, dl, MVT::v4i32, Op0, Op1); in LowerVSETCC()
19616 SDValue EQ = DAG.getNode(X86ISD::PCMPEQ, dl, MVT::v4i32, Op0, Op1); in LowerVSETCC()
19625 SDValue Result = DAG.getNode(ISD::AND, dl, MVT::v4i32, EQHi, GTLo); in LowerVSETCC()
19626 Result = DAG.getNode(ISD::OR, dl, MVT::v4i32, Result, GTHi); in LowerVSETCC()
19644 SDValue Result = DAG.getNode(Opc, dl, MVT::v4i32, Op0, Op1); in LowerVSETCC()
19649 Result = DAG.getNode(ISD::AND, dl, MVT::v4i32, Result, Shuf); in LowerVSETCC()
19664 Op0 = DAG.getNode(ISD::XOR, dl, VT, Op0, SM); in LowerVSETCC()
19665 Op1 = DAG.getNode(ISD::XOR, dl, VT, Op1, SM); in LowerVSETCC()
19668 SDValue Result = DAG.getNode(Opc, dl, VT, Op0, Op1); in LowerVSETCC()
19715 return DAG.getNode(X86ISD::KORTEST, dl, MVT::i32, LHS, RHS); in EmitKORTEST()
19794 return DAG.getNode(X86ISD::SETCC, dl, MVT::i8, X86CC, EFLAGS); in LowerSETCC()
19810 Carry = DAG.getNode(X86ISD::ADD, DL, DAG.getVTList(CarryVT, MVT::i32), in LowerSETCCCARRY()
19814 SDValue Cmp = DAG.getNode(X86ISD::SBB, DL, VTs, LHS, RHS, Carry.getValue(1)); in LowerSETCCCARRY()
19861 Value = DAG.getNode(BaseOp, DL, VTs, LHS, RHS); in getX86XALUOOp()
19879 return DAG.getNode(ISD::MERGE_VALUES, DL, Op->getVTList(), Value, SetCC); in LowerXALUO()
19928 SDValue Cmp = DAG.getNode(X86ISD::FSETCCM, DL, MVT::v1i1, CondOp0, in LowerSELECT()
19931 return DAG.getNode(X86ISD::SELECTS, DL, VT, Cmp, Op1, Op2); in LowerSELECT()
19935 SDValue Cmp = DAG.getNode(X86ISD::FSETCC, DL, VT, CondOp0, CondOp1, in LowerSELECT()
19955 SDValue VOp1 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, VecVT, Op1); in LowerSELECT()
19956 SDValue VOp2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, VecVT, Op2); in LowerSELECT()
19957 SDValue VCmp = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, VecVT, Cmp); in LowerSELECT()
19964 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, VT, in LowerSELECT()
19967 SDValue AndN = DAG.getNode(X86ISD::FANDN, DL, VT, Cmp, Op2); in LowerSELECT()
19968 SDValue And = DAG.getNode(X86ISD::FAND, DL, VT, Cmp, Op1); in LowerSELECT()
19969 return DAG.getNode(X86ISD::FOR, DL, VT, AndN, And); in LowerSELECT()
19975 SDValue Cmp = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, MVT::v1i1, Cond); in LowerSELECT()
19976 return DAG.getNode(X86ISD::SELECTS, DL, VT, Cmp, Op1, Op2); in LowerSELECT()
19988 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Lo, Hi); in LowerSELECT()
19993 if (ISD::isBuildVectorOfConstantSDNodes(Op1.getNode())) in LowerSELECT()
19998 if (ISD::isBuildVectorOfConstantSDNodes(Op2.getNode())) in LowerSELECT()
20002 if (Op1Scalar.getNode() && Op2Scalar.getNode()) { in LowerSELECT()
20008 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, ExtVec, in LowerSELECT()
20048 SDValue Cmp = DAG.getNode(X86ISD::CMP, DL, MVT::i32, Zero, CmpOp0); in LowerSELECT()
20051 return DAG.getNode(X86ISD::SBB, DL, VTs, Zero, Zero, Cmp); in LowerSELECT()
20054 Cmp = DAG.getNode(X86ISD::CMP, DL, MVT::i32, in LowerSELECT()
20061 DAG.getNode(X86ISD::SBB, DL, VTs, Zero, Zero, Cmp); in LowerSELECT()
20067 Res = DAG.getNode(ISD::OR, DL, Res.getValueType(), Res, Y); in LowerSELECT()
20094 Neg = DAG.getNode(ISD::TRUNCATE, DL, VT, CmpOp0); in LowerSELECT()
20096 Neg = DAG.getNode(ISD::AND, DL, VT, in LowerSELECT()
20097 DAG.getNode(ISD::ANY_EXTEND, DL, VT, CmpOp0.getOperand(0)), in LowerSELECT()
20101 SDValue Mask = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), in LowerSELECT()
20103 SDValue And = DAG.getNode(ISD::AND, DL, VT, Mask, Src1); // Mask & z in LowerSELECT()
20104 return DAG.getNode(Op2.getOpcode(), DL, VT, And, Src2); // And Op y in LowerSELECT()
20181 SDValue Res = DAG.getNode(X86ISD::SETCC_CARRY, DL, Op.getValueType(), in LowerSELECT()
20199 SDValue Cmov = DAG.getNode(X86ISD::CMOV, DL, T1.getValueType(), T2, T1, in LowerSELECT()
20201 return DAG.getNode(ISD::TRUNCATE, DL, Op.getValueType(), Cmov); in LowerSELECT()
20207 Op1 = DAG.getNode(ISD::ANY_EXTEND, DL, MVT::i32, Op1); in LowerSELECT()
20208 Op2 = DAG.getNode(ISD::ANY_EXTEND, DL, MVT::i32, Op2); in LowerSELECT()
20210 SDValue Cmov = DAG.getNode(X86ISD::CMOV, DL, MVT::i32, Ops); in LowerSELECT()
20211 return DAG.getNode(ISD::TRUNCATE, DL, Op.getValueType(), Cmov); in LowerSELECT()
20217 return DAG.getNode(X86ISD::CMOV, DL, Op.getValueType(), Ops); in LowerSELECT()
20247 In = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, InVT, DAG.getUNDEF(InVT), in LowerSIGN_EXTEND_Mask()
20256 V = DAG.getNode(Op.getOpcode(), dl, WideVT, In); in LowerSIGN_EXTEND_Mask()
20266 V = DAG.getNode(ISD::TRUNCATE, dl, WideVT, V); in LowerSIGN_EXTEND_Mask()
20271 V = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, VT, V, in LowerSIGN_EXTEND_Mask()
20334 return DAG.getNode(Op.getOpcode(), dl, VT, In); in LowerEXTEND_VECTOR_INREG()
20341 return DAG.getNode(ExtOpc, dl, VT, In); in LowerEXTEND_VECTOR_INREG()
20355 SDValue Lo = DAG.getNode(Opc, dl, HalfVT, In); in LowerEXTEND_VECTOR_INREG()
20357 Hi = DAG.getNode(Opc, dl, HalfVT, Hi); in LowerEXTEND_VECTOR_INREG()
20358 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, Lo, Hi); in LowerEXTEND_VECTOR_INREG()
20390 SignExt = DAG.getNode(X86ISD::VSRAI, dl, DestVT, Curr, in LowerEXTEND_VECTOR_INREG()
20432 In = DAG.getNode(ISD::CONCAT_VECTORS, SDLoc(Op), in LowerSIGN_EXTEND()
20434 return DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, VT, In); in LowerSIGN_EXTEND()
20452 SDValue OpLo = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, HalfVT, In); in LowerSIGN_EXTEND()
20460 OpHi = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, HalfVT, OpHi); in LowerSIGN_EXTEND()
20462 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, OpLo, OpHi); in LowerSIGN_EXTEND()
20467 StoreSDNode *St = cast<StoreSDNode>(Op.getNode()); in LowerStore()
20480 StoredVal = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, MVT::v16i1, in LowerStore()
20484 StoredVal = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, StoredVal); in LowerStore()
20505 StoredVal = DAG.getNode(ISD::CONCAT_VECTORS, dl, WideVT, StoredVal, in LowerStore()
20510 StoredVal = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, StVT, StoredVal, in LowerStore()
20532 LoadSDNode *Ld = cast<LoadSDNode>(Op.getNode()); in LowerLoad()
20550 SDValue Val = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::i16, NewLd); in LowerLoad()
20551 Val = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, RegVT, in LowerLoad()
20689 Res = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, LoadUnitVecVT, ScalarLoad); in LowerLoad()
20691 Res = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, LoadUnitVecVT, Res, in LowerLoad()
20694 Ptr = DAG.getNode(ISD::ADD, dl, Ptr.getValueType(), Ptr, Increment); in LowerLoad()
20698 SDValue TF = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Chains); in LowerLoad()
20844 Chain = DAG.getNode(X86ISD::BRCOND, dl, Op.getValueType(), in LowerBRCOND()
20858 Op.getNode()->hasOneUse()) { in LowerBRCOND()
20863 SDNode *User = *Op.getNode()->use_begin(); in LowerBRCOND()
20875 Chain = DAG.getNode(X86ISD::BRCOND, dl, Op.getValueType(), in LowerBRCOND()
20903 if (Op.getNode()->hasOneUse()) { in LowerBRCOND()
20904 SDNode *User = *Op.getNode()->use_begin(); in LowerBRCOND()
20916 SDValue Cmp = DAG.getNode(X86ISD::CMP, dl, MVT::i32, in LowerBRCOND()
20920 Chain = DAG.getNode(X86ISD::BRCOND, dl, Op.getValueType(), in LowerBRCOND()
20932 SDValue Cmp = DAG.getNode(X86ISD::CMP, dl, MVT::i32, in LowerBRCOND()
20936 Chain = DAG.getNode(X86ISD::BRCOND, dl, Op.getValueType(), in LowerBRCOND()
20968 return DAG.getNode(X86ISD::BRCOND, dl, Op.getValueType(), in LowerBRCOND()
20988 SDNode *Node = Op.getNode(); in LowerDYNAMIC_STACKALLOC()
21012 Result = DAG.getNode(ISD::SUB, dl, VT, SP, Size); // Value in LowerDYNAMIC_STACKALLOC()
21014 Result = DAG.getNode(ISD::AND, dl, VT, Result, in LowerDYNAMIC_STACKALLOC()
21034 Result = DAG.getNode(X86ISD::SEG_ALLOCA, dl, SPTy, Chain, in LowerDYNAMIC_STACKALLOC()
21038 Chain = DAG.getNode(X86ISD::WIN_ALLOCA, dl, NodeTys, Chain, Size); in LowerDYNAMIC_STACKALLOC()
21047 SP = DAG.getNode(ISD::AND, dl, VT, SP.getValue(0), in LowerDYNAMIC_STACKALLOC()
21102 FIN = DAG.getNode(ISD::ADD, DL, PtrVT, FIN, DAG.getIntPtrConstant(4, DL)); in LowerVASTART()
21109 FIN = DAG.getNode(ISD::ADD, DL, PtrVT, FIN, DAG.getIntPtrConstant( in LowerVASTART()
21116 return DAG.getNode(ISD::TokenFactor, DL, MVT::Other, MemOps); in LowerVASTART()
21127 return DAG.expandVAArg(Op.getNode()); in LowerVAARG()
21135 EVT ArgVT = Op.getNode()->getValueType(0); in LowerVAARG()
21186 return DAG.expandVACopy(Op.getNode()); in LowerVACOPY()
21249 if (ISD::isBuildVectorOfConstantSDNodes(SrcOp.getNode())) { in getTargetVShiftByConstNode()
21297 return DAG.getNode(Opc, dl, VT, SrcOp, in getTargetVShiftByConstNode()
21331 ShAmt = DAG.getNode(ISD::SCALAR_TO_VECTOR, SDLoc(ShAmt), MVT::v2i64, ShAmt); in getTargetVShiftNode()
21338 ShAmt = DAG.getNode(ISD::SCALAR_TO_VECTOR, SDLoc(ShAmt), AmtTy, ShAmt); in getTargetVShiftNode()
21340 ShAmt = DAG.getNode(ISD::ZERO_EXTEND_VECTOR_INREG, SDLoc(ShAmt), in getTargetVShiftNode()
21346 ShAmt = DAG.getNode(X86ISD::VSHLDQ, SDLoc(ShAmt), MVT::v16i8, ShAmt, in getTargetVShiftNode()
21348 ShAmt = DAG.getNode(X86ISD::VSRLDQ, SDLoc(ShAmt), MVT::v16i8, ShAmt, in getTargetVShiftNode()
21353 ShAmt = DAG.getNode(ISD::SCALAR_TO_VECTOR, SDLoc(ShAmt), MVT::v4i32, ShAmt); in getTargetVShiftNode()
21354 ShAmt = DAG.getNode(ISD::ZERO_EXTEND_VECTOR_INREG, SDLoc(ShAmt), in getTargetVShiftNode()
21368 return DAG.getNode(Opc, dl, VT, SrcOp, ShAmt); in getTargetVShiftNode()
21389 Lo = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, Mask, in getMaskNode()
21391 Hi = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, Mask, in getMaskNode()
21397 return DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v64i1, Lo, Hi); in getMaskNode()
21403 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MaskVT, in getMaskNode()
21428 return DAG.getNode(OpcodeSelect, dl, VT, VMask, Op, PreservedSrc); in getVectorMaskingNode()
21451 SDValue IMask = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v1i1, in getScalarMaskingNode()
21457 return DAG.getNode(ISD::AND, dl, VT, Op, IMask); in getScalarMaskingNode()
21461 return DAG.getNode(X86ISD::SELECTS, dl, VT, IMask, Op, PreservedSrc); in getScalarMaskingNode()
21508 DAG.getNode(ISD::LOCAL_RECOVER, dl, PtrVT, OffsetSymVal); in recoverFramePointer()
21515 return DAG.getNode(ISD::ADD, dl, PtrVT, EntryEBP, ParentFrameOffset); in recoverFramePointer()
21520 SDValue RegNodeBase = DAG.getNode(ISD::SUB, dl, PtrVT, EntryEBP, in recoverFramePointer()
21522 return DAG.getNode(ISD::SUB, dl, PtrVT, RegNodeBase, ParentFrameOffset); in recoverFramePointer()
21550 return DAG.getNode(IntrWithRoundingModeOpcode, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
21554 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), Op.getOperand(1)); in LowerINTRINSIC_WO_CHAIN()
21566 return DAG.getNode(IntrWithRoundingModeOpcode, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
21571 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
21581 Src3 = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Src3); in LowerINTRINSIC_WO_CHAIN()
21590 return DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21596 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
21600 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
21616 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src, in LowerINTRINSIC_WO_CHAIN()
21631 return getVectorMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21637 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src), in LowerINTRINSIC_WO_CHAIN()
21654 return getScalarMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21658 return getScalarMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src1, in LowerINTRINSIC_WO_CHAIN()
21669 return getScalarMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21674 return getScalarMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src1, in LowerINTRINSIC_WO_CHAIN()
21688 return getScalarMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src1, Src2, in LowerINTRINSIC_WO_CHAIN()
21695 return getScalarMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src1, Src2, in LowerINTRINSIC_WO_CHAIN()
21712 return getVectorMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21719 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT,Src1,Src2), in LowerINTRINSIC_WO_CHAIN()
21736 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, in LowerINTRINSIC_WO_CHAIN()
21751 return getScalarMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21755 return getScalarMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src1, in LowerINTRINSIC_WO_CHAIN()
21773 return getVectorMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21779 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, in LowerINTRINSIC_WO_CHAIN()
21788 return DAG.getNode(IntrData->Opc0, dl, VT,Src2, Src1); in LowerINTRINSIC_WO_CHAIN()
21793 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
21798 return DAG.getNode(IntrData->Opc0, dl, VT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
21811 return getVectorMaskingNode(DAG.getNode(IntrWithRoundingModeOpcode, in LowerINTRINSIC_WO_CHAIN()
21820 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, Src, in LowerINTRINSIC_WO_CHAIN()
21828 SDValue FPclass = DAG.getNode(IntrData->Opc0, dl, MVT::v1i1, Src1, Imm); in LowerINTRINSIC_WO_CHAIN()
21833 SDValue Ins = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, MVT::v8i1, in LowerINTRINSIC_WO_CHAIN()
21843 CC = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, CC); in LowerINTRINSIC_WO_CHAIN()
21850 Cmp = DAG.getNode(IntrData->Opc1, dl, MaskVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
21854 if (!Cmp.getNode()) in LowerINTRINSIC_WO_CHAIN()
21855 Cmp = DAG.getNode(IntrData->Opc0, dl, MaskVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
21863 SDValue CC = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Op.getOperand(3)); in LowerINTRINSIC_WO_CHAIN()
21870 Cmp = DAG.getNode(IntrData->Opc1, dl, MVT::v1i1, Src1, Src2, CC, Rnd); in LowerINTRINSIC_WO_CHAIN()
21873 if(!Cmp.getNode()) in LowerINTRINSIC_WO_CHAIN()
21874 Cmp = DAG.getNode(IntrData->Opc0, dl, MVT::v1i1, Src1, Src2, CC); in LowerINTRINSIC_WO_CHAIN()
21880 SDValue Ins = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, MVT::v8i1, in LowerINTRINSIC_WO_CHAIN()
21889 SDValue Comi = DAG.getNode(IntrData->Opc0, dl, MVT::i32, LHS, RHS); in LowerINTRINSIC_WO_CHAIN()
21890 SDValue InvComi = DAG.getNode(IntrData->Opc0, dl, MVT::i32, RHS, LHS); in LowerINTRINSIC_WO_CHAIN()
21896 SetCC = DAG.getNode(ISD::AND, dl, MVT::i8, SetCC, SetNP); in LowerINTRINSIC_WO_CHAIN()
21902 SetCC = DAG.getNode(ISD::OR, dl, MVT::i8, SetCC, SetP); in LowerINTRINSIC_WO_CHAIN()
21921 return DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, SetCC); in LowerINTRINSIC_WO_CHAIN()
21931 FCmp = DAG.getNode(X86ISD::FSETCCM, dl, MVT::v1i1, LHS, RHS, in LowerINTRINSIC_WO_CHAIN()
21934 FCmp = DAG.getNode(X86ISD::FSETCCM_RND, dl, MVT::v1i1, LHS, RHS, in LowerINTRINSIC_WO_CHAIN()
21938 SDValue Ins = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, MVT::v16i1, in LowerINTRINSIC_WO_CHAIN()
21941 return DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, in LowerINTRINSIC_WO_CHAIN()
21955 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, in LowerINTRINSIC_WO_CHAIN()
21980 return getVectorMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, in LowerINTRINSIC_WO_CHAIN()
21984 return getScalarMaskingNode(DAG.getNode(IntrData->Opc0, dl, VT, in LowerINTRINSIC_WO_CHAIN()
21992 SDValue RoundingMode = DAG.getNode(ISD::AND, dl, MVT::i32, in LowerINTRINSIC_WO_CHAIN()
21995 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
22002 SDValue RoundingMode = DAG.getNode(ISD::AND, dl, MVT::i32, in LowerINTRINSIC_WO_CHAIN()
22005 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), in LowerINTRINSIC_WO_CHAIN()
22017 Res = DAG.getNode(IntrData->Opc1, dl, VTs, Op.getOperand(2), in LowerINTRINSIC_WO_CHAIN()
22020 SDValue GenCF = DAG.getNode(X86ISD::ADD, dl, CFVTs, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
22022 Res = DAG.getNode(IntrData->Opc0, dl, VTs, Op.getOperand(2), in LowerINTRINSIC_WO_CHAIN()
22037 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), Src); in LowerINTRINSIC_WO_CHAIN()
22042 return DAG.getNode(IntrData->Opc1, dl, Op.getValueType(), Src, PassThru, in LowerINTRINSIC_WO_CHAIN()
22052 return DAG.getNode(IntrData->Opc0, dl, Op.getValueType(), Src, Rnd); in LowerINTRINSIC_WO_CHAIN()
22057 return DAG.getNode(IntrData->Opc1, dl, Op.getValueType(), Src, Rnd, in LowerINTRINSIC_WO_CHAIN()
22154 SDValue Test = DAG.getNode(TestOpc, dl, MVT::i32, LHS, RHS); in LowerINTRINSIC_WO_CHAIN()
22156 return DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, SetCC); in LowerINTRINSIC_WO_CHAIN()
22216 SDValue PCMP = DAG.getNode(Opcode, dl, VTs, NewOps).getValue(2); in LowerINTRINSIC_WO_CHAIN()
22218 return DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, SetCC); in LowerINTRINSIC_WO_CHAIN()
22231 return DAG.getNode(Opcode, dl, VTs, NewOps); in LowerINTRINSIC_WO_CHAIN()
22244 return DAG.getNode(Opcode, dl, VTs, NewOps).getValue(1); in LowerINTRINSIC_WO_CHAIN()
22254 return DAG.getNode(getGlobalWrapperKind(), dl, VT, in LowerINTRINSIC_WO_CHAIN()
22269 return DAG.getNode(X86ISD::Wrapper, dl, VT, Result); in LowerINTRINSIC_WO_CHAIN()
22315 if (Src.isUndef() || ISD::isBuildVectorAllOnes(Mask.getNode())) in getAVX2GatherNode()
22349 if (Src.isUndef() || ISD::isBuildVectorAllOnes(Mask.getNode())) in getGatherNode()
22435 SDValue Tmp = DAG.getNode(ISD::SHL, DL, MVT::i64, HI, in getExtendedControlRegister()
22437 Results.push_back(DAG.getNode(ISD::OR, DL, MVT::i64, LO, Tmp)); in getExtendedControlRegister()
22444 SDValue Pair = DAG.getNode(ISD::BUILD_PAIR, DL, MVT::i64, Ops); in getExtendedControlRegister()
22463 SDValue rd = DAG.getNode(X86ISD::RDPMC_DAG, DL, Tys, Chain); in getReadPerformanceCounter()
22481 SDValue Tmp = DAG.getNode(ISD::SHL, DL, MVT::i64, HI, in getReadPerformanceCounter()
22483 Results.push_back(DAG.getNode(ISD::OR, DL, MVT::i64, LO, Tmp)); in getReadPerformanceCounter()
22490 SDValue Pair = DAG.getNode(ISD::BUILD_PAIR, DL, MVT::i64, Ops); in getReadPerformanceCounter()
22503 SDValue rd = DAG.getNode(Opcode, DL, Tys, N->getOperand(0)); in getReadTimeStampCounter()
22524 TSC = DAG.getNode(ISD::SHL, DL, MVT::i64, HI, in getReadTimeStampCounter()
22526 TSC = DAG.getNode(ISD::OR, DL, MVT::i64, LO, TSC); in getReadTimeStampCounter()
22529 TSC = DAG.getNode(ISD::BUILD_PAIR, DL, MVT::i64, { LO, HI }); in getReadTimeStampCounter()
22554 getReadTimeStampCounter(Op.getNode(), DL, X86ISD::RDTSC_DAG, DAG, Subtarget, in LowerREADCYCLECOUNTER()
22669 DAG.getNode(Opcode, dl, VTs, Chain, Op->getOperand(2), in LowerINTRINSIC_W_CHAIN()
22672 SDValue Result = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i8, SetCC); in LowerINTRINSIC_W_CHAIN()
22673 return DAG.getNode(ISD::MERGE_VALUES, dl, Op->getVTList(), Result, in LowerINTRINSIC_W_CHAIN()
22687 SDValue Result = DAG.getNode(IntrData->Opc0, dl, VTs, Op.getOperand(0)); in LowerINTRINSIC_W_CHAIN()
22694 SDValue(Result.getNode(), 1) }; in LowerINTRINSIC_W_CHAIN()
22695 SDValue isValid = DAG.getNode(X86ISD::CMOV, dl, Op->getValueType(1), Ops); in LowerINTRINSIC_W_CHAIN()
22698 return DAG.getNode(ISD::MERGE_VALUES, dl, Op->getVTList(), Result, isValid, in LowerINTRINSIC_W_CHAIN()
22699 SDValue(Result.getNode(), 2)); in LowerINTRINSIC_W_CHAIN()
22750 getReadTimeStampCounter(Op.getNode(), dl, IntrData->Opc0, DAG, Subtarget, in LowerINTRINSIC_W_CHAIN()
22757 getReadPerformanceCounter(Op.getNode(), dl, DAG, Subtarget, Results); in LowerINTRINSIC_W_CHAIN()
22763 getExtendedControlRegister(Op.getNode(), dl, DAG, Subtarget, Results); in LowerINTRINSIC_W_CHAIN()
22769 SDValue InTrans = DAG.getNode(IntrData->Opc0, dl, VTs, Op.getOperand(0)); in LowerINTRINSIC_W_CHAIN()
22772 SDValue Ret = DAG.getNode(ISD::ZERO_EXTEND, dl, Op->getValueType(0), SetCC); in LowerINTRINSIC_W_CHAIN()
22773 return DAG.getNode(ISD::MERGE_VALUES, dl, Op->getVTList(), in LowerINTRINSIC_W_CHAIN()
22774 Ret, SDValue(InTrans.getNode(), 1)); in LowerINTRINSIC_W_CHAIN()
22839 DAG.getNode(ISD::ADD, dl, PtrVT, FrameAddr, Offset), in LowerRETURNADDR()
22968 SDValue StoreAddr = DAG.getNode(ISD::ADD, dl, PtrVT, Frame, in LowerEH_RETURN()
22971 StoreAddr = DAG.getNode(ISD::ADD, dl, PtrVT, StoreAddr, Offset); in LowerEH_RETURN()
22975 return DAG.getNode(X86ISD::EH_RETURN, dl, MVT::Other, Chain, in LowerEH_RETURN()
22992 return DAG.getNode(X86ISD::EH_SJLJ_SETJMP, DL, in lowerEH_SJLJ_SETJMP()
23000 return DAG.getNode(X86ISD::EH_SJLJ_LONGJMP, DL, MVT::Other, in lowerEH_SJLJ_LONGJMP()
23007 return DAG.getNode(X86ISD::EH_SJLJ_SETUP_DISPATCH, DL, MVT::Other, in lowerEH_SJLJ_SETUP_DISPATCH()
23044 Addr = DAG.getNode(ISD::ADD, dl, MVT::i64, Trmp, in LowerINIT_TRAMPOLINE()
23053 Addr = DAG.getNode(ISD::ADD, dl, MVT::i64, Trmp, in LowerINIT_TRAMPOLINE()
23058 Addr = DAG.getNode(ISD::ADD, dl, MVT::i64, Trmp, in LowerINIT_TRAMPOLINE()
23066 Addr = DAG.getNode(ISD::ADD, dl, MVT::i64, Trmp, in LowerINIT_TRAMPOLINE()
23072 Addr = DAG.getNode(ISD::ADD, dl, MVT::i64, Trmp, in LowerINIT_TRAMPOLINE()
23077 return DAG.getNode(ISD::TokenFactor, dl, MVT::Other, OutChains); in LowerINIT_TRAMPOLINE()
23128 Addr = DAG.getNode(ISD::ADD, dl, MVT::i32, Trmp, in LowerINIT_TRAMPOLINE()
23130 Disp = DAG.getNode(ISD::SUB, dl, MVT::i32, FPtr, Addr); in LowerINIT_TRAMPOLINE()
23139 Addr = DAG.getNode(ISD::ADD, dl, MVT::i32, Trmp, in LowerINIT_TRAMPOLINE()
23146 Addr = DAG.getNode(ISD::ADD, dl, MVT::i32, Trmp, in LowerINIT_TRAMPOLINE()
23152 Addr = DAG.getNode(ISD::ADD, dl, MVT::i32, Trmp, in LowerINIT_TRAMPOLINE()
23158 return DAG.getNode(ISD::TokenFactor, dl, MVT::Other, OutChains); in LowerINIT_TRAMPOLINE()
23209 DAG.getNode(ISD::SRL, DL, MVT::i16, in LowerFLT_ROUNDS_()
23210 DAG.getNode(ISD::AND, DL, MVT::i16, in LowerFLT_ROUNDS_()
23214 DAG.getNode(ISD::SRL, DL, MVT::i16, in LowerFLT_ROUNDS_()
23215 DAG.getNode(ISD::AND, DL, MVT::i16, in LowerFLT_ROUNDS_()
23220 DAG.getNode(ISD::AND, DL, MVT::i16, in LowerFLT_ROUNDS_()
23221 DAG.getNode(ISD::ADD, DL, MVT::i16, in LowerFLT_ROUNDS_()
23222 DAG.getNode(ISD::OR, DL, MVT::i16, CWD1, CWD2), in LowerFLT_ROUNDS_()
23226 return DAG.getNode((VT.getSizeInBits() < 16 ? in LowerFLT_ROUNDS_()
23246 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, in LowerVectorIntUnary()
23247 DAG.getNode(Op.getOpcode(), dl, NewVT, Lo), in LowerVectorIntUnary()
23248 DAG.getNode(Op.getOpcode(), dl, NewVT, Hi)); in LowerVectorIntUnary()
23294 Op = DAG.getNode(ISD::ZERO_EXTEND, dl, NewVT, Op.getOperand(0)); in LowerVectorCTLZ_AVX512CDI()
23295 SDValue CtlzNode = DAG.getNode(ISD::CTLZ, dl, NewVT, Op); in LowerVectorCTLZ_AVX512CDI()
23296 SDValue TruncNode = DAG.getNode(ISD::TRUNCATE, dl, VT, CtlzNode); in LowerVectorCTLZ_AVX512CDI()
23299 return DAG.getNode(ISD::SUB, dl, VT, TruncNode, Delta); in LowerVectorCTLZ_AVX512CDI()
23332 SDValue Hi = DAG.getNode(ISD::SRL, DL, CurrVT, Op0, NibbleShift); in LowerVectorCTLZInRegLUT()
23337 HiZ = DAG.getNode(ISD::SIGN_EXTEND, DL, CurrVT, HiZ); in LowerVectorCTLZInRegLUT()
23342 Lo = DAG.getNode(X86ISD::PSHUFB, DL, CurrVT, InRegLUT, Lo); in LowerVectorCTLZInRegLUT()
23343 Hi = DAG.getNode(X86ISD::PSHUFB, DL, CurrVT, InRegLUT, Hi); in LowerVectorCTLZInRegLUT()
23344 Lo = DAG.getNode(ISD::AND, DL, CurrVT, Lo, HiZ); in LowerVectorCTLZInRegLUT()
23345 SDValue Res = DAG.getNode(ISD::ADD, DL, CurrVT, Lo, Hi); in LowerVectorCTLZInRegLUT()
23364 HiZ = DAG.getNode(ISD::SIGN_EXTEND, DL, CurrVT, HiZ); in LowerVectorCTLZInRegLUT()
23375 SDValue R0 = DAG.getNode(ISD::SRL, DL, NextVT, ResNext, Shift); in LowerVectorCTLZInRegLUT()
23376 SDValue R1 = DAG.getNode(ISD::SRL, DL, NextVT, HiZ, Shift); in LowerVectorCTLZInRegLUT()
23377 R1 = DAG.getNode(ISD::AND, DL, NextVT, ResNext, R1); in LowerVectorCTLZInRegLUT()
23378 Res = DAG.getNode(ISD::ADD, DL, NextVT, R0, R1); in LowerVectorCTLZInRegLUT()
23422 Op = DAG.getNode(ISD::ZERO_EXTEND, dl, OpVT, Op); in LowerCTLZ()
23427 Op = DAG.getNode(X86ISD::BSR, dl, VTs, Op); in LowerCTLZ()
23437 Op = DAG.getNode(X86ISD::CMOV, dl, OpVT, Ops); in LowerCTLZ()
23441 Op = DAG.getNode(ISD::XOR, dl, OpVT, Op, in LowerCTLZ()
23445 Op = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Op); in LowerCTLZ()
23465 Op = DAG.getNode(X86ISD::BSF, dl, VTs, N0); in LowerCTTZ()
23474 return DAG.getNode(X86ISD::CMOV, dl, VT, Ops); in LowerCTTZ()
23501 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, in split256IntArith()
23502 DAG.getNode(Op.getOpcode(), dl, NewVT, LHS1, RHS1), in split256IntArith()
23503 DAG.getNode(Op.getOpcode(), dl, NewVT, LHS2, RHS2)); in split256IntArith()
23530 return DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, in split512IntArith()
23531 DAG.getNode(Op.getOpcode(), dl, NewVT, LHS1, RHS1), in split512IntArith()
23532 DAG.getNode(Op.getOpcode(), dl, NewVT, LHS2, RHS2)); in split512IntArith()
23542 return DAG.getNode(ISD::XOR, SDLoc(Op), VT, in lowerAddSub()
23559 return DAG.getNode(ISD::OR, dl, VT, Op.getOperand(0), Op.getOperand(1)); in LowerADDSAT_SUBSAT()
23562 return DAG.getNode(ISD::AND, dl, VT, Op.getOperand(0), in LowerADDSAT_SUBSAT()
23581 SDValue Neg = DAG.getNode(X86ISD::SUB, DL, DAG.getVTList(VT, MVT::i32), in LowerABS()
23584 SDValue(Neg.getNode(), 1)}; in LowerABS()
23585 return DAG.getNode(X86ISD::CMOV, DL, VT, Ops); in LowerABS()
23593 DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), Src); in LowerABS()
23594 return DAG.getNode(X86ISD::BLENDV, DL, VT, Src, Sub, Src); in LowerABS()
23625 N0 = DAG.getNode(ISD::XOR, DL, VT, N0, Sign); in LowerMINMAX()
23626 N1 = DAG.getNode(ISD::XOR, DL, VT, N1, Sign); in LowerMINMAX()
23628 SDValue Result = DAG.getNode(Opcode, DL, VT, N0, N1); in LowerMINMAX()
23629 return DAG.getNode(ISD::XOR, DL, VT, Result, Sign); in LowerMINMAX()
23652 return DAG.getNode(ISD::AND, dl, VT, Op.getOperand(0), Op.getOperand(1)); in LowerMUL()
23669 return DAG.getNode( in LowerMUL()
23671 DAG.getNode(ISD::MUL, dl, ExVT, in LowerMUL()
23672 DAG.getNode(ISD::ANY_EXTEND, dl, ExVT, A), in LowerMUL()
23673 DAG.getNode(ISD::ANY_EXTEND, dl, ExVT, B))); in LowerMUL()
23687 if (ISD::isBuildVectorOfConstantSDNodes(B.getNode())) { in LowerMUL()
23707 SDValue RLo = DAG.getNode(ISD::MUL, dl, ExVT, ALo, BLo); in LowerMUL()
23708 SDValue RHi = DAG.getNode(ISD::MUL, dl, ExVT, AHi, BHi); in LowerMUL()
23709 RLo = DAG.getNode(ISD::AND, dl, ExVT, RLo, DAG.getConstant(255, dl, ExVT)); in LowerMUL()
23710 RHi = DAG.getNode(ISD::AND, dl, ExVT, RHi, DAG.getConstant(255, dl, ExVT)); in LowerMUL()
23711 return DAG.getNode(X86ISD::PACKUS, dl, VT, RLo, RHi); in LowerMUL()
23725 SDValue Evens = DAG.getNode(X86ISD::PMULUDQ, dl, MVT::v2i64, in LowerMUL()
23729 SDValue Odds = DAG.getNode(X86ISD::PMULUDQ, dl, MVT::v2i64, in LowerMUL()
23771 AloBlo = DAG.getNode(X86ISD::PMULUDQ, dl, VT, A, B); in LowerMUL()
23776 AloBhi = DAG.getNode(X86ISD::PMULUDQ, dl, VT, A, Bhi); in LowerMUL()
23782 AhiBlo = DAG.getNode(X86ISD::PMULUDQ, dl, VT, Ahi, B); in LowerMUL()
23785 SDValue Hi = DAG.getNode(ISD::ADD, dl, VT, AloBhi, AhiBlo); in LowerMUL()
23788 return DAG.getNode(ISD::ADD, dl, VT, AloBlo, Hi); in LowerMUL()
23837 SDValue Mul1 = DAG.getBitcast(VT, DAG.getNode(Opcode, dl, MulVT, in LowerMULH()
23842 SDValue Mul2 = DAG.getBitcast(VT, DAG.getNode(Opcode, dl, MulVT, in LowerMULH()
23857 SDValue T1 = DAG.getNode(ISD::AND, dl, VT, in LowerMULH()
23859 SDValue T2 = DAG.getNode(ISD::AND, dl, VT, in LowerMULH()
23862 SDValue Fixup = DAG.getNode(ISD::ADD, dl, VT, T1, T2); in LowerMULH()
23863 Res = DAG.getNode(ISD::SUB, dl, VT, Res, Fixup); in LowerMULH()
23884 SDValue ExA = DAG.getNode(ExAVX, dl, ExVT, A); in LowerMULH()
23885 SDValue ExB = DAG.getNode(ExAVX, dl, ExVT, B); in LowerMULH()
23886 SDValue Mul = DAG.getNode(ISD::MUL, dl, ExVT, ExA, ExB); in LowerMULH()
23888 return DAG.getNode(ISD::TRUNCATE, dl, VT, Mul); in LowerMULH()
23906 ALo = DAG.getNode(ExAVX, dl, ExVT, ALo); in LowerMULH()
23907 BLo = DAG.getNode(ExAVX, dl, ExVT, BLo); in LowerMULH()
23908 AHi = DAG.getNode(ExAVX, dl, ExVT, AHi); in LowerMULH()
23909 BHi = DAG.getNode(ExAVX, dl, ExVT, BHi); in LowerMULH()
23910 Lo = DAG.getNode(ISD::MUL, dl, ExVT, ALo, BLo); in LowerMULH()
23911 Hi = DAG.getNode(ISD::MUL, dl, ExVT, AHi, BHi); in LowerMULH()
23944 ALo = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, ExVT, A); in LowerMULH()
23947 AHi = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, ExVT, AHi); in LowerMULH()
23962 if (ISD::isBuildVectorOfConstantSDNodes(B.getNode())) { in LowerMULH()
23986 BLo = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, ExVT, B); in LowerMULH()
23989 BHi = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, ExVT, BHi); in LowerMULH()
24005 SDValue RLo = DAG.getNode(ISD::MUL, dl, ExVT, ALo, BLo); in LowerMULH()
24006 SDValue RHi = DAG.getNode(ISD::MUL, dl, ExVT, AHi, BHi); in LowerMULH()
24011 return DAG.getNode(X86ISD::PACKUS, dl, VT, RLo, RHi); in LowerMULH()
24134 return DAG.getNode(X86ISD::PCMPGT, dl, VT, DAG.getConstant(0, dl, VT), R); in LowerScalarImmediateShift()
24186 return DAG.getNode(ISD::ADD, dl, VT, R, R); in LowerScalarImmediateShift()
24194 return DAG.getNode(ISD::SIGN_EXTEND, dl, VT, CMP); in LowerScalarImmediateShift()
24196 return DAG.getNode(X86ISD::PCMPGT, dl, VT, Zeros, R); in LowerScalarImmediateShift()
24209 return DAG.getNode(ISD::AND, dl, VT, SHL, in LowerScalarImmediateShift()
24218 return DAG.getNode(ISD::AND, dl, VT, SRL, in LowerScalarImmediateShift()
24223 SDValue Res = DAG.getNode(ISD::SRL, dl, VT, R, Amt); in LowerScalarImmediateShift()
24226 Res = DAG.getNode(ISD::XOR, dl, VT, Res, Mask); in LowerScalarImmediateShift()
24227 Res = DAG.getNode(ISD::SUB, dl, VT, Res, Mask); in LowerScalarImmediateShift()
24278 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, in GetSplatValue()
24299 BaseShAmt = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i64, BaseShAmt); in LowerScalarVariableShift()
24301 BaseShAmt = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, BaseShAmt); in LowerScalarVariableShift()
24316 BaseShAmt = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i32, BaseShAmt); in LowerScalarVariableShift()
24334 Res = DAG.getNode(ISD::AND, dl, VT, Res, BitMask); in LowerScalarVariableShift()
24343 Res = DAG.getNode(ISD::XOR, dl, VT, Res, SignMask); in LowerScalarVariableShift()
24344 Res = DAG.getNode(ISD::SUB, dl, VT, Res, SignMask); in LowerScalarVariableShift()
24366 return DAG.getNode(X86OpcV, dl, VT, R, Op.getOperand(1)); in LowerScalarVariableShift()
24381 if (ISD::isBuildVectorOfConstantSDNodes(Amt.getNode())) { in convertShiftLeftToScale()
24410 Amt = DAG.getNode(ISD::SHL, dl, VT, Amt, DAG.getConstant(23, dl, VT)); in convertShiftLeftToScale()
24411 Amt = DAG.getNode(ISD::ADD, dl, VT, Amt, in convertShiftLeftToScale()
24414 return DAG.getNode(ISD::FP_TO_SINT, dl, VT, Amt); in convertShiftLeftToScale()
24425 return DAG.getNode(X86ISD::PACKUS, dl, VT, Lo, Hi); in convertShiftLeftToScale()
24442 bool ConstantAmt = ISD::isBuildVectorOfConstantSDNodes(Amt.getNode()); in LowerShift()
24466 Amt = DAG.getNode(ISD::SUB, dl, VT, Zero, Amt); in LowerShift()
24469 return DAG.getNode(X86ISD::VPSHL, dl, VT, R, Amt); in LowerShift()
24471 return DAG.getNode(X86ISD::VPSHA, dl, VT, R, Amt); in LowerShift()
24480 SDValue R0 = DAG.getNode(Opc, dl, VT, R, Amt0); in LowerShift()
24481 SDValue R1 = DAG.getNode(Opc, dl, VT, R, Amt1); in LowerShift()
24491 SDValue M = DAG.getNode(ISD::SRL, dl, VT, S, Amt); in LowerShift()
24492 R = DAG.getNode(ISD::SRL, dl, VT, R, Amt); in LowerShift()
24493 R = DAG.getNode(ISD::XOR, dl, VT, R, M); in LowerShift()
24494 R = DAG.getNode(ISD::SUB, dl, VT, R, M); in LowerShift()
24555 return DAG.getNode(ISD::MUL, dl, VT, R, Scale); in LowerShift()
24562 SDValue RAmt = DAG.getNode(ISD::SUB, dl, VT, EltBits, Amt); in LowerShift()
24566 SDValue Res = DAG.getNode(ISD::MULHU, dl, VT, R, Scale); in LowerShift()
24581 SDValue RAmt = DAG.getNode(ISD::SUB, dl, VT, EltBits, Amt); in LowerShift()
24589 SDValue Res = DAG.getNode(ISD::MULHS, dl, VT, R, Scale); in LowerShift()
24634 SDValue R0 = DAG.getNode(ShOpc, dl, VT, R, DAG.getBitcast(VT, Amt0)); in LowerShift()
24635 SDValue R1 = DAG.getNode(ShOpc, dl, VT, R, DAG.getBitcast(VT, Amt1)); in LowerShift()
24636 SDValue R2 = DAG.getNode(ShOpc, dl, VT, R, DAG.getBitcast(VT, Amt2)); in LowerShift()
24637 SDValue R3 = DAG.getNode(ShOpc, dl, VT, R, DAG.getBitcast(VT, Amt3)); in LowerShift()
24665 R = DAG.getNode(ExtOpc, dl, ExtVT, R); in LowerShift()
24666 Amt = DAG.getNode(ISD::ZERO_EXTEND, dl, ExtVT, Amt); in LowerShift()
24667 return DAG.getNode(ISD::TRUNCATE, dl, VT, in LowerShift()
24668 DAG.getNode(Opc, dl, ExtVT, R, Amt)); in LowerShift()
24684 Amt = DAG.getNode(ISD::SUB, dl, ExVT, DAG.getConstant(8, dl, ExVT), Amt); in LowerShift()
24685 Amt = DAG.getNode(ISD::SHL, dl, ExVT, DAG.getConstant(1, dl, ExVT), Amt); in LowerShift()
24686 assert(ISD::isBuildVectorOfConstantSDNodes(Amt.getNode()) && in LowerShift()
24692 R = DAG.getNode(ISD::MUL, dl, ExVT, R, Amt); in LowerShift()
24693 R = DAG.getNode(X86ISD::VSRLI, dl, ExVT, R, Cst8); in LowerShift()
24711 LoR = DAG.getNode(X86OpcI, dl, VT16, LoR, Cst8); in LowerShift()
24712 HiR = DAG.getNode(X86OpcI, dl, VT16, HiR, Cst8); in LowerShift()
24713 LoR = DAG.getNode(ISD::MUL, dl, VT16, LoR, LoA); in LowerShift()
24714 HiR = DAG.getNode(ISD::MUL, dl, VT16, HiR, HiA); in LowerShift()
24715 LoR = DAG.getNode(X86ISD::VSRLI, dl, VT16, LoR, Cst8); in LowerShift()
24716 HiR = DAG.getNode(X86ISD::VSRLI, dl, VT16, HiR, Cst8); in LowerShift()
24717 return DAG.getNode(X86ISD::PACKUS, dl, VT, LoR, HiR); in LowerShift()
24749 SDValue C = DAG.getNode(X86ISD::PCMPGT, dl, SelVT, Z, Sel); in LowerShift()
24762 SDValue M = DAG.getNode(Opc, dl, VT, R, DAG.getConstant(4, dl, VT)); in LowerShift()
24766 Amt = DAG.getNode(ISD::ADD, dl, VT, Amt, Amt); in LowerShift()
24769 M = DAG.getNode(Opc, dl, VT, R, DAG.getConstant(2, dl, VT)); in LowerShift()
24773 Amt = DAG.getNode(ISD::ADD, dl, VT, Amt, Amt); in LowerShift()
24776 M = DAG.getNode(Opc, dl, VT, R, DAG.getConstant(1, dl, VT)); in LowerShift()
24801 ALo = DAG.getNode(ISD::ADD, dl, ExtVT, ALo, ALo); in LowerShift()
24802 AHi = DAG.getNode(ISD::ADD, dl, ExtVT, AHi, AHi); in LowerShift()
24811 ALo = DAG.getNode(ISD::ADD, dl, ExtVT, ALo, ALo); in LowerShift()
24812 AHi = DAG.getNode(ISD::ADD, dl, ExtVT, AHi, AHi); in LowerShift()
24824 return DAG.getNode(X86ISD::PACKUS, dl, VT, RLo, RHi); in LowerShift()
24839 SDValue Lo = DAG.getNode(Opc, dl, ExtVT, RLo, ALo); in LowerShift()
24840 SDValue Hi = DAG.getNode(Opc, dl, ExtVT, RHi, AHi); in LowerShift()
24843 return DAG.getNode(X86ISD::PACKUS, dl, VT, Lo, Hi); in LowerShift()
24850 !ISD::isBuildVectorOfConstantSDNodes(Amt.getNode()); in LowerShift()
24874 Amt = DAG.getNode( in LowerShift()
24887 Amt = DAG.getNode(ISD::ADD, dl, VT, Amt, Amt); in LowerShift()
24894 Amt = DAG.getNode(ISD::ADD, dl, VT, Amt, Amt); in LowerShift()
24901 Amt = DAG.getNode(ISD::ADD, dl, VT, Amt, Amt); in LowerShift()
24949 return DAG.getNode(Op, DL, VT, R, in LowerRotate()
24970 return DAG.getNode(X86ISD::VROTLI, DL, VT, R, in LowerRotate()
24996 if (ISD::isBuildVectorOfConstantSDNodes(Amt.getNode())) in LowerRotate()
25015 SDValue C = DAG.getNode(X86ISD::PCMPGT, DL, SelVT, Z, Sel); in LowerRotate()
25023 Amt = DAG.getNode(ISD::SHL, DL, ExtVT, Amt, DAG.getConstant(5, DL, ExtVT)); in LowerRotate()
25028 M = DAG.getNode( in LowerRotate()
25030 DAG.getNode(ISD::SHL, DL, VT, R, DAG.getConstant(4, DL, VT)), in LowerRotate()
25031 DAG.getNode(ISD::SRL, DL, VT, R, DAG.getConstant(4, DL, VT))); in LowerRotate()
25035 Amt = DAG.getNode(ISD::ADD, DL, VT, Amt, Amt); in LowerRotate()
25038 M = DAG.getNode( in LowerRotate()
25040 DAG.getNode(ISD::SHL, DL, VT, R, DAG.getConstant(2, DL, VT)), in LowerRotate()
25041 DAG.getNode(ISD::SRL, DL, VT, R, DAG.getConstant(6, DL, VT))); in LowerRotate()
25045 Amt = DAG.getNode(ISD::ADD, DL, VT, Amt, Amt); in LowerRotate()
25048 M = DAG.getNode( in LowerRotate()
25050 DAG.getNode(ISD::SHL, DL, VT, R, DAG.getConstant(1, DL, VT)), in LowerRotate()
25051 DAG.getNode(ISD::SRL, DL, VT, R, DAG.getConstant(7, DL, VT))); in LowerRotate()
25056 Amt = DAG.getNode(ISD::AND, DL, VT, Amt, in LowerRotate()
25059 bool ConstantAmt = ISD::isBuildVectorOfConstantSDNodes(Amt.getNode()); in LowerRotate()
25067 AmtR = DAG.getNode(ISD::SUB, DL, VT, AmtR, Amt); in LowerRotate()
25068 SDValue SHL = DAG.getNode(ISD::SHL, DL, VT, R, Amt); in LowerRotate()
25069 SDValue SRL = DAG.getNode(ISD::SRL, DL, VT, R, AmtR); in LowerRotate()
25070 return DAG.getNode(ISD::OR, DL, VT, SHL, SRL); in LowerRotate()
25079 SDValue Lo = DAG.getNode(ISD::MUL, DL, VT, R, Scale); in LowerRotate()
25080 SDValue Hi = DAG.getNode(ISD::MULHU, DL, VT, R, Scale); in LowerRotate()
25081 return DAG.getNode(ISD::OR, DL, VT, Lo, Hi); in LowerRotate()
25092 SDValue Res02 = DAG.getNode(X86ISD::PMULUDQ, DL, MVT::v2i64, in LowerRotate()
25095 SDValue Res13 = DAG.getNode(X86ISD::PMULUDQ, DL, MVT::v2i64, in LowerRotate()
25101 return DAG.getNode(ISD::OR, DL, VT, in LowerRotate()
25245 return DAG.getNode(X86ISD::MFENCE, dl, MVT::Other, Op.getOperand(0)); in LowerATOMIC_FENCE()
25263 return DAG.getNode(X86ISD::MEMBARRIER, dl, MVT::Other, Op.getOperand(0)); in LowerATOMIC_FENCE()
25314 Lo = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, Lo); in getPMOVMSKB()
25315 Hi = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, Hi); in getPMOVMSKB()
25316 Hi = DAG.getNode(ISD::SHL, DL, MVT::i32, Hi, in getPMOVMSKB()
25318 return DAG.getNode(ISD::OR, DL, MVT::i32, Lo, Hi); in getPMOVMSKB()
25321 return DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, V); in getPMOVMSKB()
25336 SDValue Lo = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, Src, in LowerBITCAST()
25339 SDValue Hi = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, Src, in LowerBITCAST()
25342 return DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v64i1, Lo, Hi); in LowerBITCAST()
25355 return DAG.getNode(ISD::CONCAT_VECTORS, dl, DstVT, Lo, Hi); in LowerBITCAST()
25382 Src = DAG.getNode(ISD::CONCAT_VECTORS, dl, NewVT, Src, in LowerBITCAST()
25387 Src = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2i64, Src); in LowerBITCAST()
25391 Src = DAG.getNode(ISD::BITCAST, dl, V2X64VT, Src); in LowerBITCAST()
25394 return DAG.getNode(X86ISD::MOVDQ2Q, dl, DstVT, Src); in LowerBITCAST()
25396 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, DstVT, Src, in LowerBITCAST()
25441 V = DAG.getNode(X86ISD::PSADBW, DL, SadVecVT, V, Zeros); in LowerHorizontalByteSum()
25459 Low = DAG.getNode(X86ISD::PSADBW, DL, SadVecVT, in LowerHorizontalByteSum()
25461 High = DAG.getNode(X86ISD::PSADBW, DL, SadVecVT, in LowerHorizontalByteSum()
25466 V = DAG.getNode(X86ISD::PACKUS, DL, ByteVecVT, in LowerHorizontalByteSum()
25481 SDValue Shl = DAG.getNode(ISD::SHL, DL, VT, DAG.getBitcast(VT, V), ShifterV); in LowerHorizontalByteSum()
25482 V = DAG.getNode(ISD::ADD, DL, ByteVecVT, DAG.getBitcast(ByteVecVT, Shl), in LowerHorizontalByteSum()
25484 return DAG.getNode(ISD::SRL, DL, VT, DAG.getBitcast(VT, V), ShifterV); in LowerHorizontalByteSum()
25519 SDValue HiNibbles = DAG.getNode(ISD::SRL, DL, VT, Op, FourV); in LowerVectorCTPOPInRegLUT()
25522 SDValue LoNibbles = DAG.getNode(ISD::AND, DL, VT, Op, M0F); in LowerVectorCTPOPInRegLUT()
25527 SDValue HiPopCnt = DAG.getNode(X86ISD::PSHUFB, DL, VT, InRegLUT, HiNibbles); in LowerVectorCTPOPInRegLUT()
25528 SDValue LoPopCnt = DAG.getNode(X86ISD::PSHUFB, DL, VT, InRegLUT, LoNibbles); in LowerVectorCTPOPInRegLUT()
25529 return DAG.getNode(ISD::ADD, DL, VT, HiPopCnt, LoPopCnt); in LowerVectorCTPOPInRegLUT()
25539 SDLoc DL(Op.getNode()); in LowerVectorCTPOP()
25549 Op = DAG.getNode(ISD::ZERO_EXTEND, DL, NewVT, Op0); in LowerVectorCTPOP()
25550 Op = DAG.getNode(ISD::CTPOP, DL, NewVT, Op); in LowerVectorCTPOP()
25551 return DAG.getNode(ISD::TRUNCATE, DL, VT, Op); in LowerVectorCTPOP()
25567 SDValue PopCnt8 = DAG.getNode(ISD::CTPOP, DL, ByteVT, ByteOp); in LowerVectorCTPOP()
25594 SDValue Res = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, VecVT, In); in LowerBITREVERSE_XOP()
25595 Res = DAG.getNode(ISD::BITREVERSE, DL, VecVT, Res); in LowerBITREVERSE_XOP()
25596 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, VT, Res, in LowerBITREVERSE_XOP()
25625 Res = DAG.getNode(X86ISD::VPPERM, DL, MVT::v16i8, DAG.getUNDEF(MVT::v16i8), in LowerBITREVERSE_XOP()
25654 SDValue Lo = DAG.getNode(ISD::AND, DL, VT, In, NibbleMask); in LowerBITREVERSE()
25655 SDValue Hi = DAG.getNode(ISD::SRL, DL, VT, In, DAG.getConstant(4, DL, VT)); in LowerBITREVERSE()
25676 Lo = DAG.getNode(X86ISD::PSHUFB, DL, VT, LoMask, Lo); in LowerBITREVERSE()
25677 Hi = DAG.getNode(X86ISD::PSHUFB, DL, VT, HiMask, Hi); in LowerBITREVERSE()
25678 return DAG.getNode(ISD::OR, DL, VT, Lo, Hi); in LowerBITREVERSE()
25729 AtomicSDNode *AN = cast<AtomicSDNode>(N.getNode()); in lowerAtomicArith()
25730 RHS = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), RHS); in lowerAtomicArith()
25747 SDNode *Node = Op.getNode(); in LowerATOMIC_STORE()
25771 SDNode *N = Op.getNode(); in LowerADDSUBCARRY()
25785 Carry = DAG.getNode(X86ISD::ADD, DL, DAG.getVTList(CarryVT, MVT::i32), in LowerADDSUBCARRY()
25789 SDValue Sum = DAG.getNode(Opc, DL, VTs, Op.getOperand(0), in LowerADDSUBCARRY()
25794 SetCC = DAG.getNode(ISD::TRUNCATE, DL, MVT::i1, SetCC); in LowerADDSUBCARRY()
25796 return DAG.getNode(ISD::MERGE_VALUES, DL, N->getVTList(), Sum, SetCC); in LowerADDSUBCARRY()
25845 SDValue SinVal = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, ArgVT, in LowerFSINCOS()
25847 SDValue CosVal = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, ArgVT, in LowerFSINCOS()
25850 return DAG.getNode(ISD::MERGE_VALUES, dl, Tys, SinVal, CosVal); in LowerFSINCOS()
25877 if ((ISD::isBuildVectorAllZeros(N1.getNode()) && FillWithZeroes) || in ExtendToType()
25884 if (ISD::isBuildVectorOfConstantSDNodes(InOp.getNode()) || in ExtendToType()
25885 ISD::isBuildVectorOfConstantFPSDNodes(InOp.getNode())) { in ExtendToType()
25900 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, NVT, FillVal, in ExtendToType()
25909 MaskedScatterSDNode *N = cast<MaskedScatterSDNode>(Op.getNode()); in LowerMSCATTER()
25925 Src = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, Src, in LowerMSCATTER()
25931 DAG.ReplaceAllUsesWith(Op, SDValue(NewScatter.getNode(), 1)); in LowerMSCATTER()
25932 return SDValue(NewScatter.getNode(), 1); in LowerMSCATTER()
25939 Src = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i32, Src, in LowerMSCATTER()
25947 DAG.ReplaceAllUsesWith(Op, SDValue(NewScatter.getNode(), 1)); in LowerMSCATTER()
25948 return SDValue(NewScatter.getNode(), 1); in LowerMSCATTER()
25953 Index = DAG.getNode(ISD::CONCAT_VECTORS, dl, NewIndexVT, Index, in LowerMSCATTER()
25955 Mask = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i1, Mask, in LowerMSCATTER()
25992 DAG.ReplaceAllUsesWith(Op, SDValue(NewScatter.getNode(), 1)); in LowerMSCATTER()
25993 return SDValue(NewScatter.getNode(), 1); in LowerMSCATTER()
25999 MaskedLoadSDNode *N = cast<MaskedLoadSDNode>(Op.getNode()); in LowerMLOAD()
26038 SDValue Exract = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, VT, in LowerMLOAD()
26047 MaskedStoreSDNode *N = cast<MaskedStoreSDNode>(Op.getNode()); in LowerMSTORE()
26091 MaskedGatherSDNode *N = cast<MaskedGatherSDNode>(Op.getNode()); in LowerMGATHER()
26131 SDValue Extract = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OrigVT, in LowerMGATHER()
26310 if (!Res.getNode()) in LowerOperationWrapper()
26338 SDValue N0 = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::v2i64, in ReplaceNodeResults()
26340 SDValue N1 = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::v2i64, in ReplaceNodeResults()
26342 SDValue Mul = DAG.getNode(X86ISD::PMULUDQ, dl, MVT::v2i64, N0, N1); in ReplaceNodeResults()
26343 Results.push_back(DAG.getNode(ISD::TRUNCATE, dl, VT, Mul)); in ReplaceNodeResults()
26349 SDValue Op0 = DAG.getNode(ISD::ANY_EXTEND, dl, MulVT, N->getOperand(0)); in ReplaceNodeResults()
26350 SDValue Op1 = DAG.getNode(ISD::ANY_EXTEND, dl, MulVT, N->getOperand(1)); in ReplaceNodeResults()
26351 SDValue Res = DAG.getNode(ISD::MUL, dl, MulVT, Op0, Op1); in ReplaceNodeResults()
26352 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
26356 Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v16i8, ConcatOps); in ReplaceNodeResults()
26386 SDValue InVec0 = DAG.getNode(ISD::CONCAT_VECTORS, dl, InWideVT, Ops); in ReplaceNodeResults()
26388 SDValue InVec1 = DAG.getNode(ISD::CONCAT_VECTORS, dl, InWideVT, Ops); in ReplaceNodeResults()
26390 SDValue Res = DAG.getNode(N->getOpcode(), dl, WideVT, InVec0, InVec1); in ReplaceNodeResults()
26392 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, VT, Res, in ReplaceNodeResults()
26406 SDValue LHS = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, in ReplaceNodeResults()
26408 SDValue RHS = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, in ReplaceNodeResults()
26410 SDValue Res = DAG.getNode(ISD::SETCC, dl, MVT::v4i32, LHS, RHS, in ReplaceNodeResults()
26412 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v2i32, Res, in ReplaceNodeResults()
26425 SDValue LHS = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, in ReplaceNodeResults()
26427 SDValue RHS = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, in ReplaceNodeResults()
26429 Results.push_back(DAG.getNode(N->getOpcode(), dl, MVT::v4f32, LHS, RHS)); in ReplaceNodeResults()
26442 if (ISD::isConstantSplatVector(N->getOperand(1).getNode(), SplatVal)) { in ReplaceNodeResults()
26447 SDValue N0 = DAG.getNode(ISD::CONCAT_VECTORS, dl, ResVT, Ops0); in ReplaceNodeResults()
26449 SDValue Res = DAG.getNode(N->getOpcode(), dl, ResVT, N0, N1); in ReplaceNodeResults()
26499 SDValue Val = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, InEltVT, In, in ReplaceNodeResults()
26501 Ops[i] = DAG.getNode(ISD::TRUNCATE, dl, EltVT, Val); in ReplaceNodeResults()
26512 Results.push_back(DAG.getNode(X86ISD::VTRUNC, dl, WidenVT, In)); in ReplaceNodeResults()
26517 In = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v8i64, In, in ReplaceNodeResults()
26519 Results.push_back(DAG.getNode(X86ISD::VTRUNC, dl, WidenVT, In)); in ReplaceNodeResults()
26543 In = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, ExtractVT, in ReplaceNodeResults()
26545 In = DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, dl, MVT::v4i32, In); in ReplaceNodeResults()
26557 Lo = DAG.getNode(ISD::BITCAST, dl, LoVT, Lo); in ReplaceNodeResults()
26559 Hi = DAG.getNode(ISD::BITCAST, dl, HiVT, Hi); in ReplaceNodeResults()
26561 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, Lo, Hi); in ReplaceNodeResults()
26581 In = DAG.getNode(ISD::SIGN_EXTEND, dl, MVT::v4i32, In); in ReplaceNodeResults()
26591 Lo = DAG.getNode(ISD::BITCAST, dl, MVT::v2i64, Lo); in ReplaceNodeResults()
26594 Hi = DAG.getNode(ISD::BITCAST, dl, MVT::v2i64, Hi); in ReplaceNodeResults()
26596 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, Lo, Hi); in ReplaceNodeResults()
26622 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, VT, Lo, Hi); in ReplaceNodeResults()
26642 SDValue Res = DAG.getNode(ISD::FP_TO_SINT, dl, MVT::v2i32, Src); in ReplaceNodeResults()
26643 Res = DAG.getNode(N->getOpcode() == ISD::FP_TO_UINT ? ISD::AssertZext in ReplaceNodeResults()
26647 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
26660 SDValue Res = DAG.getNode(ISD::FP_TO_SINT, dl, PromoteVT, Src); in ReplaceNodeResults()
26665 Res = DAG.getNode(N->getOpcode() == ISD::FP_TO_UINT ? ISD::AssertZext in ReplaceNodeResults()
26671 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
26679 Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, ConcatVT, ConcatOps); in ReplaceNodeResults()
26700 Src = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f64, in ReplaceNodeResults()
26703 SDValue Res = DAG.getNode(Opc, dl, MVT::v4i32, Src); in ReplaceNodeResults()
26705 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v2i32, Res, in ReplaceNodeResults()
26713 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, Src, in ReplaceNodeResults()
26715 Res = DAG.getNode(IsSigned ? ISD::FP_TO_SINT in ReplaceNodeResults()
26717 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v2i32, Res, Idx); in ReplaceNodeResults()
26738 SDValue Res = DAG.getNode(ISD::INSERT_VECTOR_ELT, dl, VecInVT, in ReplaceNodeResults()
26741 Res = DAG.getNode(N->getOpcode(), SDLoc(N), VecVT, Res); in ReplaceNodeResults()
26742 Res = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, VT, Res, ZeroIdx); in ReplaceNodeResults()
26750 if (FIST.getNode()) { in ReplaceNodeResults()
26752 if (StackSlot.getNode()) in ReplaceNodeResults()
26765 Results.push_back(DAG.getNode(X86ISD::CVTSI2P, dl, MVT::v4f32, Src)); in ReplaceNodeResults()
26776 Results.push_back(DAG.getNode(X86ISD::CVTUI2P, dl, MVT::v4f32, Src)); in ReplaceNodeResults()
26781 SDValue ZExtIn = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::v2i64, Src); in ReplaceNodeResults()
26784 SDValue Or = DAG.getNode(ISD::OR, dl, MVT::v2i64, ZExtIn, in ReplaceNodeResults()
26788 SDValue Sub = DAG.getNode(ISD::FSUB, dl, MVT::v2f64, Or, VBias); in ReplaceNodeResults()
26789 Results.push_back(DAG.getNode(X86ISD::VFPROUND, dl, MVT::v4f32, Sub)); in ReplaceNodeResults()
26795 SDValue V = DAG.getNode(X86ISD::VFPROUND, dl, MVT::v4f32, N->getOperand(0)); in ReplaceNodeResults()
26839 cpInL = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, HalfT, N->getOperand(2), in ReplaceNodeResults()
26841 cpInH = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, HalfT, N->getOperand(2), in ReplaceNodeResults()
26850 swapInL = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, HalfT, N->getOperand(3), in ReplaceNodeResults()
26852 swapInH = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, HalfT, N->getOperand(3), in ReplaceNodeResults()
26910 Results.push_back(DAG.getNode(ISD::BUILD_PAIR, dl, T, OpsF)); in ReplaceNodeResults()
26944 SDValue Res = DAG.getNode(ISD::BUILD_PAIR, dl, MVT::i64, Lo, Hi); in ReplaceNodeResults()
26957 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, dl, DstVT, Lo, Hi); in ReplaceNodeResults()
26971 Res = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2f64, N->getOperand(0)); in ReplaceNodeResults()
26973 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, DstVT, Res, in ReplaceNodeResults()
26987 SDValue PassThru = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4f32, in ReplaceNodeResults()
26993 Mask = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i1, Mask, in ReplaceNodeResults()
26995 Mask = DAG.getNode(ISD::SIGN_EXTEND, dl, MVT::v4i32, Mask); in ReplaceNodeResults()
27011 SDValue PassThru = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i32, in ReplaceNodeResults()
27020 Mask = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i1, Mask, in ReplaceNodeResults()
27022 Mask = DAG.getNode(ISD::SIGN_EXTEND, dl, MVT::v4i32, Mask); in ReplaceNodeResults()
27031 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v2i32, Res, in ReplaceNodeResults()
27042 Index = DAG.getNode(ISD::CONCAT_VECTORS, dl, NewIndexVT, Index, in ReplaceNodeResults()
27044 Mask = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v4i1, Mask, in ReplaceNodeResults()
27053 Res = DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, MVT::v2i32, Res, in ReplaceNodeResults()
27080 Res = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, WideVT, Res); in ReplaceNodeResults()
30070 SDValue NewOp = TLO.DAG.getNode(ISD::AND, DL, VT, Op.getOperand(0), NewC); in targetShrinkDemandedConstant()
30184 if (getTargetShuffleMask(Op.getNode(), VT.getSimpleVT(), true, Ops, Mask, in computeKnownBitsForTargetNode()
30872 Res = DAG.getNode(X86ISD::VPERM2X128, DL, ShuffleVT, Res, in combineX86ShuffleChain()
30940 Res = DAG.getNode(Shuffle, DL, ShuffleVT, Res); in combineX86ShuffleChain()
30951 Res = DAG.getNode(Shuffle, DL, ShuffleVT, Res, in combineX86ShuffleChain()
30967 Res = DAG.getNode(Shuffle, DL, ShuffleVT, NewV1, NewV2); in combineX86ShuffleChain()
30981 Res = DAG.getNode(Shuffle, DL, ShuffleVT, NewV1, NewV2, in combineX86ShuffleChain()
30998 Res = DAG.getNode(X86ISD::EXTRQI, DL, IntMaskVT, V1, in combineX86ShuffleChain()
31009 Res = DAG.getNode(X86ISD::INSERTQI, DL, IntMaskVT, V1, V2, in combineX86ShuffleChain()
31042 Res = DAG.getNode(X86ISD::VPERMV, DL, MaskVT, VPermMask, Res); in combineX86ShuffleChain()
31067 Res = DAG.getNode(X86ISD::VPERMV3, DL, MaskVT, Res, VPermMask, Zero); in combineX86ShuffleChain()
31086 Res = DAG.getNode(X86ISD::VPERMV3, DL, MaskVT, V1, VPermMask, V2); in combineX86ShuffleChain()
31115 Res = DAG.getNode(AndOpcode, DL, MaskVT, Res, BitMask); in combineX86ShuffleChain()
31133 Res = DAG.getNode(X86ISD::VPERMILPV, DL, MaskVT, Res, VPermMask); in combineX86ShuffleChain()
31167 Res = DAG.getNode(X86ISD::VPERMIL2, DL, MaskVT, V1, V2, VPerm2MaskOp, in combineX86ShuffleChain()
31201 Res = DAG.getNode(X86ISD::PSHUFB, DL, ByteVT, Res, PSHUFBMaskOp); in combineX86ShuffleChain()
31232 Res = DAG.getNode(X86ISD::VPPERM, DL, ByteVT, V1, V2, VPPERMMaskOp); in combineX86ShuffleChain()
31516 CombinedNodes.push_back(Op.getNode()); in combineX86ShufflesRecursively()
31528 if (Ops[i].getNode()->hasOneUse() || in combineX86ShufflesRecursively()
31529 SDNode::areOnlyUsersOf(CombinedNodes, Ops[i].getNode())) in combineX86ShufflesRecursively()
31579 getTargetShuffleMask(N.getNode(), VT, false, Ops, Mask, IsUnary); in getPSHUFShuffleMask()
31675 !V->isOnlyUserOf(V.getOperand(0).getNode())) in combineRedundantDWordShuffle()
31712 V = DAG.getNode(V.getOpcode(), DL, V.getValueType(), V.getOperand(0), in combineRedundantDWordShuffle()
31728 V = DAG.getNode(W.getOpcode(), DL, W.getValueType(), V, V); in combineRedundantDWordShuffle()
31734 V = DAG.getNode(W.getOpcode(), DL, W.getValueType(), V, W.getOperand(1)); in combineRedundantDWordShuffle()
31777 SDValue Horiz = DAG.getNode(Opcode0, DL, VT0, Lo, Hi); in combineTargetShuffle()
31800 return DAG.getNode(X86ISD::VBROADCAST, DL, VT, in combineTargetShuffle()
31830 N10 = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, SVT, N10, ZeroIdx); in combineTargetShuffle()
31831 N11 = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, SVT, N11, ZeroIdx); in combineTargetShuffle()
31832 SDValue Scl = DAG.getNode(Opcode1, DL, SVT, N10, N11); in combineTargetShuffle()
31833 SDValue SclVec = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, VT, Scl); in combineTargetShuffle()
31834 return DAG.getNode(Opcode, DL, VT, N0, SclVec); in combineTargetShuffle()
31852 return DAG.getNode(X86ISD::INSERTPS, DL, VT, DAG.getUNDEF(VT), Op1, in combineTargetShuffle()
31857 return DAG.getNode(X86ISD::INSERTPS, DL, VT, Op0, DAG.getUNDEF(VT), in combineTargetShuffle()
31868 return DAG.getNode(X86ISD::INSERTPS, DL, VT, Op0, DAG.getUNDEF(VT), in combineTargetShuffle()
31875 return DAG.getNode(X86ISD::INSERTPS, DL, VT, Op0, Op1, in combineTargetShuffle()
31920 return DAG.getNode(X86ISD::INSERTPS, DL, VT, Op0, Op1, in combineTargetShuffle()
31952 V = DAG.getNode(X86ISD::PSHUFD, DL, DVT, V, in combineTargetShuffle()
31984 return DAG.getNode(MappedMask[0] == 0 ? X86ISD::UNPCKL in combineTargetShuffle()
32140 return DAG.getNode(Opcode, DL, VT, FMAdd.getOperand(0), FMAdd.getOperand(1), in combineShuffleToFMAddSub()
32164 return DAG.getNode(Opc, DL, VT, Opnd0, Opnd1, Opnd2); in combineShuffleToAddSubOrFMAddSub()
32176 return DAG.getNode(X86ISD::ADDSUB, DL, VT, Opnd0, Opnd1); in combineShuffleToAddSubOrFMAddSub()
32219 SDValue Concat = DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, N0.getOperand(0), in combineShuffleOfConcatUndef()
32336 SDValue NewBinOp = DAG.getNode(BC0.getOpcode(), dl, VT, BC00, BC01); in combineShuffle()
32418 return DAG.getNode(ISD::MUL, dl, MVT::v4i32, Op0, Op1); in combineShuffle()
32432 return DAG.getNode(ISD::MUL, dl, MVT::v4i32, Op0, Op1); in combineShuffle()
32539 if (!getTargetShuffleMask(Op.getNode(), VT.getSimpleVT(), true, OpInputs, in SimplifyDemandedVectorEltsForTargetNode()
32649 SDValue NewShift = TLO.DAG.getNode( in SimplifyDemandedBitsForTargetNode()
32733 Op, TLO.DAG.getNode(X86ISD::VSRLI, SDLoc(Op), VT, Op0, Op1)); in SimplifyDemandedBitsForTargetNode()
32815 if (!getTargetShuffleMask(InVec.getNode(), CurrentVT.getSimpleVT(), true, in XFormVExtractWithShuffleIntoLoad()
32844 if (!LdNode.getNode()->hasNUsesOfValue(AllowedUses, 0)) in XFormVExtractWithShuffleIntoLoad()
32851 if (!ISD::isNormalLoad(LdNode.getNode())) in XFormVExtractWithShuffleIntoLoad()
32878 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, N->getValueType(0), Shuffle, in XFormVExtractWithShuffleIntoLoad()
32971 SDValue V = DAG.getNode(ISD::SIGN_EXTEND, DL, SExtVT, N0); in combineBitcastvxi1()
32976 Lo = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, Lo); in combineBitcastvxi1()
32977 Lo = DAG.getNode(ISD::ZERO_EXTEND, DL, MVT::i64, Lo); in combineBitcastvxi1()
32978 Hi = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, Hi); in combineBitcastvxi1()
32979 Hi = DAG.getNode(ISD::ANY_EXTEND, DL, MVT::i64, Hi); in combineBitcastvxi1()
32980 Hi = DAG.getNode(ISD::SHL, DL, MVT::i64, Hi, in combineBitcastvxi1()
32982 V = DAG.getNode(ISD::OR, DL, MVT::i64, Lo, Hi); in combineBitcastvxi1()
32987 V = DAG.getNode(X86ISD::PACKSS, DL, MVT::v16i8, V, in combineBitcastvxi1()
32989 V = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, V); in combineBitcastvxi1()
32999 assert(ISD::isBuildVectorOfConstantSDNodes(Op.getNode()) && in combinevXi1ConstantToInteger()
33049 return DAG.getNode(Op.getOpcode(), SDLoc(N), DstVT, LHS.getOperand(0), in combineCastedMaskArithmetic()
33054 return DAG.getNode(Op.getOpcode(), SDLoc(N), DstVT, in combineCastedMaskArithmetic()
33059 if (ISD::isBuildVectorOfConstantSDNodes(RHS.getNode())) { in combineCastedMaskArithmetic()
33061 return DAG.getNode(Op.getOpcode(), SDLoc(N), DstVT, in combineCastedMaskArithmetic()
33082 V = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, MVT::v4f32, V); in createMMXBuildVector()
33084 return DAG.getNode(X86ISD::MOVDQ2Q, DL, MVT::x86mmx, V); in createMMXBuildVector()
33090 return DAG.getNode(X86ISD::MMX_MOVW2D, DL, MVT::x86mmx, V); in createMMXBuildVector()
33106 Splat = DAG.getNode( in createMMXBuildVector()
33113 return DAG.getNode( in createMMXBuildVector()
33133 Ops[i / 2] = DAG.getNode(ISD::INTRINSIC_WO_CHAIN, DL, MVT::x86mmx, Intrin, in createMMXBuildVector()
33163 N0 = DAG.getNode(ISD::ANY_EXTEND, dl, MVT::i8, N0); in combineBitcast()
33165 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, VT, N0, in combineBitcast()
33177 N0 = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v8i1, Ops); in combineBitcast()
33179 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0); in combineBitcast()
33194 return DAG.getNode(X86ISD::MMX_MOVW2D, DL, VT, in combineBitcast()
33217 return DAG.getNode(X86ISD::MMX_MOVW2D, dl, VT, N00); in combineBitcast()
33235 return DAG.getNode(X86ISD::MOVDQ2Q, SDLoc(N00), VT, in combineBitcast()
33242 SDValue Res = DAG.getNode(ISD::CONCAT_VECTORS, DL, MVT::v4i32, N0, in combineBitcast()
33244 return DAG.getNode(X86ISD::MOVDQ2Q, DL, VT, in combineBitcast()
33253 ISD::isBuildVectorOfConstantSDNodes(N0.getNode())) { in combineBitcast()
33298 return DAG.getNode(FPOpcode, DL0, VT, LogicOp0.getOperand(0), CastedOp1); in combineBitcast()
33305 return DAG.getNode(FPOpcode, DL0, VT, LogicOp1.getOperand(0), CastedOp0); in combineBitcast()
33341 ISD::isBuildVectorAllZeros(SelectOp2.getOperand(0).getNode()) && in detectZextAbsDiff()
33353 !((ISD::isConstantSplatVector(SetCC.getOperand(1).getNode(), SplatVal) && in detectZextAbsDiff()
33355 (ISD::isBuildVectorAllZeros(SetCC.getOperand(1).getNode())))) in detectZextAbsDiff()
33360 !(ISD::isBuildVectorAllZeros(SetCC.getOperand(1).getNode()) || in detectZextAbsDiff()
33361 ISD::isBuildVectorAllOnes(SetCC.getOperand(1).getNode()))) in detectZextAbsDiff()
33397 SDValue SadOp0 = DAG.getNode(ISD::CONCAT_VECTORS, DL, ExtendedVT, Ops); in createPSADBW()
33399 SDValue SadOp1 = DAG.getNode(ISD::CONCAT_VECTORS, DL, ExtendedVT, Ops); in createPSADBW()
33405 return DAG.getNode(X86ISD::PSADBW, DL, VT, Ops); in createPSADBW()
33447 MinPos = DAG.getNode(BinOp, DL, SrcVT, Lo, Hi); in combineHorizontalMinMaxResult()
33465 MinPos = DAG.getNode(ISD::XOR, DL, SrcVT, Mask, MinPos); in combineHorizontalMinMaxResult()
33475 MinPos = DAG.getNode(ISD::UMIN, DL, SrcVT, MinPos, Upper); in combineHorizontalMinMaxResult()
33480 MinPos = DAG.getNode(X86ISD::PHMINPOS, DL, MVT::v8i16, MinPos); in combineHorizontalMinMaxResult()
33484 MinPos = DAG.getNode(ISD::XOR, DL, SrcVT, Mask, MinPos); in combineHorizontalMinMaxResult()
33486 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, ExtractVT, MinPos, in combineHorizontalMinMaxResult()
33558 Res = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, Res); in combineHorizontalPredicateResult()
33632 SAD = DAG.getNode(ISD::ADD, DL, SadVT, SAD, Shuffle); in combineBasicSADPattern()
33641 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, Type, SAD, in combineBasicSADPattern()
33728 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, SrcSVT, SrcOp, in combineExtractWithShuffle()
33737 SDValue ExtOp = DAG.getNode(OpCode, dl, MVT::i32, SrcOp, in combineExtractWithShuffle()
33789 return DAG.getNode(X86ISD::MMX_MOVD2W, dl, MVT::i32, MMXSrc); in combineExtractVectorElt()
33839 bool TValIsAllZeros = ISD::isBuildVectorAllZeros(LHS.getNode()); in combineVSelectWithAllOnesOrZeros()
33858 bool TValIsAllOnes = ISD::isBuildVectorAllOnes(LHS.getNode()); in combineVSelectWithAllOnesOrZeros()
33859 bool FValIsAllZeros = ISD::isBuildVectorAllZeros(RHS.getNode()); in combineVSelectWithAllOnesOrZeros()
33869 bool FValIsAllOnes = ISD::isBuildVectorAllOnes(RHS.getNode()); in combineVSelectWithAllOnesOrZeros()
33898 SDValue Or = DAG.getNode(ISD::OR, DL, CondVT, Cond, CastRHS); in combineVSelectWithAllOnesOrZeros()
33905 SDValue And = DAG.getNode(ISD::AND, DL, CondVT, Cond, CastLHS); in combineVSelectWithAllOnesOrZeros()
33914 SDValue AndN = DAG.getNode(X86ISD::ANDNP, DL, AndNVT, CastCond, CastRHS); in combineVSelectWithAllOnesOrZeros()
33968 SDValue R = DAG.getNode(ISD::ZERO_EXTEND, DL, VT, Cond); in combineSelectOfTwoConstants()
33972 R = DAG.getNode(ISD::MUL, DL, VT, R, DAG.getConstant(AbsDiff, DL, VT)); in combineSelectOfTwoConstants()
33976 R = DAG.getNode(ISD::ADD, DL, VT, R, SDValue(FalseC, 0)); in combineSelectOfTwoConstants()
33995 ISD::isBuildVectorOfConstantSDNodes(Cond.getNode())) in combineVSelectToBLENDV()
34057 SDValue SB = DAG.getNode(X86ISD::BLENDV, SDLoc(U), U->getValueType(0), in combineVSelectToBLENDV()
34085 if (ISD::isBuildVectorOfConstantSDNodes(Cond.getNode()) && in combineSelect()
34243 return DAG.getNode(Opcode, DL, N->getValueType(0), LHS, RHS); in combineSelect()
34261 return DAG.getNode(ISD::SELECT, DL, VT, AndNode, RHS, LHS); in combineSelect()
34278 Cond = DAG.getNode(ISD::SIGN_EXTEND, DL, VT, Cond); in combineSelect()
34279 return DAG.getNode(N->getOpcode(), DL, VT, Cond, LHS, RHS); in combineSelect()
34328 if (ISD::isBuildVectorAllZeros(LHS.getNode())) { in combineSelect()
34331 } else if (ISD::isBuildVectorAllZeros(RHS.getNode())) { in combineSelect()
34335 if (Other.getNode() && Other->getNumOperands() == 2 && in combineSelect()
34345 return DAG.getNode(ISD::USUBSAT, DL, VT, OpLHS, OpRHS); in combineSelect()
34358 OpRHS = DAG.getNode(ISD::SUB, DL, VT, in combineSelect()
34360 return DAG.getNode(ISD::USUBSAT, DL, VT, OpLHS, OpRHS); in combineSelect()
34370 ISD::isBuildVectorAllZeros(CondRHS.getNode()) && in combineSelect()
34375 return DAG.getNode(ISD::USUBSAT, DL, VT, OpLHS, OpRHS); in combineSelect()
34398 if (ISD::isBuildVectorAllOnes(LHS.getNode())) { in combineSelect()
34401 } else if (ISD::isBuildVectorAllOnes(RHS.getNode())) { in combineSelect()
34405 if (Other.getNode() && Other.getOpcode() == ISD::ADD) { in combineSelect()
34419 return DAG.getNode(ISD::UADDSAT, DL, VT, OpLHS, OpRHS); in combineSelect()
34431 return DAG.getNode(ISD::UADDSAT, DL, VT, OpLHS, OpRHS); in combineSelect()
34450 SDValue newSelect = DAG.getNode(ISD::SELECT, DL, MVT::i64, Cond, LHS, RHS); in combineSelect()
34519 auto *AN = cast<AtomicSDNode>(CmpLHS.getNode()); in combineSetCCAtomicArith()
34783 return DAG.getNode(X86ISD::CMOV, DL, N->getValueType(0), Ops); in combineCMov()
34807 Cond = DAG.getNode(ISD::ZERO_EXTEND, DL, TrueC->getValueType(0), Cond); in combineCMov()
34810 Cond = DAG.getNode(ISD::SHL, DL, Cond.getValueType(), Cond, in combineCMov()
34821 Cond = DAG.getNode(ISD::ZERO_EXTEND, DL, in combineCMov()
34823 Cond = DAG.getNode(ISD::ADD, DL, Cond.getValueType(), Cond, in combineCMov()
34854 Cond = DAG.getNode(ISD::ZERO_EXTEND, DL, FalseC->getValueType(0), in combineCMov()
34858 Cond = DAG.getNode(ISD::MUL, DL, Cond.getValueType(), Cond, in combineCMov()
34863 Cond = DAG.getNode(ISD::ADD, DL, Cond.getValueType(), Cond, in combineCMov()
34904 return DAG.getNode(X86ISD::CMOV, DL, N->getValueType(0), Ops); in combineCMov()
34939 SDValue LCMOV = DAG.getNode(X86ISD::CMOV, DL, N->getValueType(0), LOps); in combineCMov()
34941 SDValue CMOV = DAG.getNode(X86ISD::CMOV, DL, N->getValueType(0), Ops); in combineCMov()
34971 SDValue Diff = DAG.getNode(ISD::SUB, DL, VT, Const, Add.getOperand(1)); in combineCMov()
34972 SDValue CMov = DAG.getNode(X86ISD::CMOV, DL, VT, Diff, Add.getOperand(0), in combineCMov()
34975 return DAG.getNode(ISD::ADD, DL, VT, CMov, Add.getOperand(1)); in combineCMov()
35079 SDValue NewN0 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, N0); in reduceVMULWidth()
35080 SDValue NewN1 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, N1); in reduceVMULWidth()
35086 SDValue MulLo = DAG.getNode(ISD::MUL, DL, ReducedVT, NewN0, NewN1); in reduceVMULWidth()
35088 return DAG.getNode((Mode == MULU8) ? ISD::ZERO_EXTEND : ISD::SIGN_EXTEND, in reduceVMULWidth()
35094 SDValue MulHi = DAG.getNode(Mode == MULS16 ? ISD::MULHS : ISD::MULHU, DL, in reduceVMULWidth()
35116 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, ResLo, ResHi); in reduceVMULWidth()
35135 NewN0 = DAG.getNode(ISD::CONCAT_VECTORS, DL, OpsVT, Ops); in reduceVMULWidth()
35137 NewN1 = DAG.getNode(ISD::CONCAT_VECTORS, DL, OpsVT, Ops); in reduceVMULWidth()
35142 SDValue Mul = DAG.getNode(ISD::MUL, DL, OpsVT, NewN0, NewN1); in reduceVMULWidth()
35146 SDValue Res = DAG.getNode(Mode == MULU8 ? ISD::ZERO_EXTEND_VECTOR_INREG in reduceVMULWidth()
35149 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, Res, in reduceVMULWidth()
35155 SDValue MulLo = DAG.getNode(ISD::MUL, DL, OpsVT, NewN0, NewN1); in reduceVMULWidth()
35156 SDValue MulHi = DAG.getNode(Mode == MULS16 ? ISD::MULHS : ISD::MULHU, DL, in reduceVMULWidth()
35164 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, Res, in reduceVMULWidth()
35172 SDValue Result = DAG.getNode(X86ISD::MUL_IMM, DL, VT, N->getOperand(0), in combineMulSpecial()
35174 Result = DAG.getNode(ISD::SHL, DL, VT, Result, in combineMulSpecial()
35176 Result = DAG.getNode(isAdd ? ISD::ADD : ISD::SUB, DL, VT, Result, in combineMulSpecial()
35182 SDValue Result = DAG.getNode(X86ISD::MUL_IMM, DL, VT, N->getOperand(0), in combineMulSpecial()
35184 Result = DAG.getNode(X86ISD::MUL_IMM, DL, VT, Result, in combineMulSpecial()
35186 Result = DAG.getNode(isAdd ? ISD::ADD : ISD::SUB, DL, VT, Result, in combineMulSpecial()
35205 return DAG.getNode(ISD::ADD, DL, VT, N->getOperand(0), in combineMulSpecial()
35230 return DAG.getNode(ISD::ADD, DL, VT, N->getOperand(0), in combineMulSpecial()
35243 SDValue Shift1 = DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMulSpecial()
35245 SDValue Shift2 = DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMulSpecial()
35247 return DAG.getNode(ISD::ADD, DL, VT, Shift1, Shift2); in combineMulSpecial()
35298 return DAG.getNode(X86ISD::VPMADDWD, DL, VT, Ops); in combineMulToPMADDWD()
35327 return DAG.getNode(X86ISD::PMULDQ, DL, Ops[0].getValueType(), Ops); in combineMulToPMULDQ()
35338 return DAG.getNode(X86ISD::PMULUDQ, DL, Ops[0].getValueType(), Ops); in combineMulToPMULDQ()
35387 SDValue NewMul = DAG.getNode(X86ISD::MUL_IMM, DL, VT, N->getOperand(0), in combineMul()
35390 NewMul = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), in combineMul()
35425 NewMul = DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMul()
35428 NewMul = DAG.getNode(X86ISD::MUL_IMM, DL, VT, N->getOperand(0), in combineMul()
35432 NewMul = DAG.getNode(ISD::SHL, DL, VT, NewMul, in combineMul()
35435 NewMul = DAG.getNode(X86ISD::MUL_IMM, DL, VT, NewMul, in combineMul()
35440 NewMul = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), in combineMul()
35452 NewMul = DAG.getNode( in combineMul()
35454 DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMul()
35459 NewMul = DAG.getNode(ISD::SUB, DL, VT, in combineMul()
35463 NewMul = DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMul()
35468 NewMul = DAG.getNode(ISD::SUB, DL, VT, N->getOperand(0), NewMul); in combineMul()
35470 NewMul = DAG.getNode(ISD::SUB, DL, VT, NewMul, N->getOperand(0)); in combineMul()
35473 NewMul = DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMul()
35476 NewMul = DAG.getNode(ISD::ADD, DL, VT, NewMul, N->getOperand(0)); in combineMul()
35477 NewMul = DAG.getNode(ISD::ADD, DL, VT, NewMul, N->getOperand(0)); in combineMul()
35480 NewMul = DAG.getNode(ISD::SHL, DL, VT, N->getOperand(0), in combineMul()
35483 NewMul = DAG.getNode(ISD::SUB, DL, VT, NewMul, N->getOperand(0)); in combineMul()
35484 NewMul = DAG.getNode(ISD::SUB, DL, VT, NewMul, N->getOperand(0)); in combineMul()
35529 return DAG.getNode(ISD::AND, DL, VT, N00, DAG.getConstant(Mask, DL, VT)); in combineShiftLeft()
35544 return DAG.getNode(ISD::ADD, SDLoc(N), VT, N0, N0); in combineShiftLeft()
35589 DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, VT, N00, DAG.getValueType(SVT)); in combineShiftRightArithmetic()
35594 return DAG.getNode(ISD::SHL, DL, VT, NN, in combineShiftRightArithmetic()
35597 return DAG.getNode(ISD::SRA, DL, VT, NN, in combineShiftRightArithmetic()
35646 SDValue NewShift = DAG.getNode(ISD::SRL, DL, VT, N0.getOperand(0), N1); in combineShiftRightLogical()
35647 return DAG.getNode(ISD::AND, DL, VT, NewShift, NewMask); in combineShiftRightLogical()
35691 if ((N0->isUndef() || N->isOnlyUserOf(N0.getNode())) && in combineVectorPack()
35692 (N1->isUndef() || N->isOnlyUserOf(N1.getNode())) && in combineVectorPack()
35752 return DAG.getNode(X86ISD::VTRUNC, SDLoc(N), VT, N0.getOperand(0)); in combineVectorPack()
35756 SDValue Concat = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v16i32, in combineVectorPack()
35758 return DAG.getNode(ISD::TRUNCATE, SDLoc(N), VT, Concat); in combineVectorPack()
35782 if (ISD::isBuildVectorAllZeros(N->getOperand(0).getNode())) in combineVectorShiftVar()
35826 if (ISD::isBuildVectorAllZeros(N0.getNode())) in combineVectorShiftImm()
35836 return DAG.getNode(X86ISD::VSRAI, SDLoc(N), VT, N0.getOperand(0), in combineVectorShiftImm()
35852 if (N->isOnlyUserOf(N0.getNode()) && in combineVectorShiftImm()
35956 DAG.getNode(X86ISD::FSETCCM, DL, MVT::v1i1, CMP00, CMP01, in combineCompareEqual()
35960 SDValue Ins = DAG.getNode(ISD::INSERT_SUBVECTOR, DL, MVT::v16i1, in combineCompareEqual()
35966 SDValue OnesOrZeroesF = DAG.getNode(X86ISD::FSETCC, DL, in combineCompareEqual()
35980 SDValue Vector64 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, MVT::v2f64, in combineCompareEqual()
35983 OnesOrZeroesF = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, MVT::f32, in combineCompareEqual()
35989 SDValue ANDed = DAG.getNode(ISD::AND, DL, IntVT, OnesOrZeroesI, in combineCompareEqual()
35991 SDValue OneBitOfTruth = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, in combineCompareEqual()
36013 ISD::isBuildVectorAllOnes(N0.getOperand(1).getNode())) { in combineANDXORWithAllOnesIntoANDNP()
36017 ISD::isBuildVectorAllOnes(N1.getOperand(1).getNode())) { in combineANDXORWithAllOnesIntoANDNP()
36025 return DAG.getNode(X86ISD::ANDNP, SDLoc(N), VT, X, Y); in combineANDXORWithAllOnesIntoANDNP()
36067 !ISD::isBuildVectorOfConstantSDNodes(N1.getNode())) in PromoteMaskArithmetic()
36080 N1 = DAG.getNode(ISD::ZERO_EXTEND, DL, VT, N1); in PromoteMaskArithmetic()
36083 SDValue Op = DAG.getNode(Narrow->getOpcode(), DL, VT, N0, N1); in PromoteMaskArithmetic()
36092 return DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, VT, in PromoteMaskArithmetic()
36125 SDValue FPLogic = DAG.getNode(FPOpcode, DL, N00Type, N00, N10); in convertIntLogicToFPLogic()
36146 if (!ISD::isConstantSplatVector(Op1.getNode(), SplatVal) || in combineAndMaskToShift()
36164 SDValue Shift = DAG.getNode(X86ISD::VSRLI, DL, VT0, Op0, ShAmt); in combineAndMaskToShift()
36221 LoadSDNode *Ld = dyn_cast<LoadSDNode>(N.getNode()); in combineAndLoadToBZHI()
36273 SDValue Sub = DAG.getNode(ISD::SUB, dl, MVT::i32, SizeC, Index); in combineAndLoadToBZHI()
36274 Sub = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Sub); in combineAndLoadToBZHI()
36277 SDValue LShr = DAG.getNode(ISD::SRL, dl, VT, AllOnes, Sub); in combineAndLoadToBZHI()
36279 return DAG.getNode(ISD::AND, dl, VT, Inp, LShr); in combineAndLoadToBZHI()
36319 SDValue Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, in combineParity()
36320 DAG.getNode(ISD::SRL, DL, VT, X, in combineParity()
36322 SDValue Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, X); in combineParity()
36323 X = DAG.getNode(ISD::XOR, DL, MVT::i32, Lo, Hi); in combineParity()
36326 SDValue Parity = DAG.getNode(ISD::AND, DL, MVT::i32, in combineParity()
36327 DAG.getNode(ISD::CTPOP, DL, MVT::i32, X), in combineParity()
36329 return DAG.getNode(ISD::ZERO_EXTEND, DL, VT, Parity); in combineParity()
36334 SDValue Hi16 = DAG.getNode(ISD::SRL, DL, VT, X, in combineParity()
36336 X = DAG.getNode(ISD::XOR, DL, VT, X, Hi16); in combineParity()
36341 SDValue Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, in combineParity()
36342 DAG.getNode(ISD::SRL, DL, VT, X, in combineParity()
36344 SDValue Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, X); in combineParity()
36346 SDValue Flags = DAG.getNode(X86ISD::XOR, DL, VTs, Lo, Hi).getValue(1); in combineParity()
36351 return DAG.getNode(ISD::ZERO_EXTEND, DL, N->getValueType(0), Setnp); in combineParity()
36362 MVT::v4i32, DAG.getNode(X86ISD::FAND, SDLoc(N), MVT::v4f32, in combineAnd()
36374 SDValue LHS = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, N->getOperand(0)); in combineAnd()
36375 SDValue RHS = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, N->getOperand(1)); in combineAnd()
36376 return DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::i64, in combineAnd()
36377 DAG.getNode(ISD::AND, dl, MVT::i32, LHS, RHS)); in combineAnd()
36424 N->getOperand(0)->isOnlyUserOf(SrcVec.getNode()) && in combineAnd()
36446 return DAG.getNode(ISD::EXTRACT_VECTOR_ELT, SDLoc(N), VT, Shuffle, in combineAnd()
36541 ISD::isBuildVectorAllZeros(N->getOperand(0).getNode()); in combineLogicBlendIntoPBLENDV()
36544 if (IsNegV(Y.getNode(), X)) in combineLogicBlendIntoPBLENDV()
36546 else if (IsNegV(X.getNode(), Y)) in combineLogicBlendIntoPBLENDV()
36550 SDValue SubOp1 = DAG.getNode(ISD::XOR, DL, MaskVT, V, Mask); in combineLogicBlendIntoPBLENDV()
36566 SDValue Res = DAG.getNode(ISD::SUB, DL, MaskVT, SubOp1, SubOp2); in combineLogicBlendIntoPBLENDV()
36596 SDValue Clz = DAG.getNode(ISD::CTLZ, dl, VT, Cmp->getOperand(0)); in lowerX86CmpEqZeroToCtlzSrl()
36600 SDValue Scc = DAG.getNode(ISD::SRL, dl, MVT::i32, Trunc, in lowerX86CmpEqZeroToCtlzSrl()
36638 SDNode *OR = N->getOperand(0).getNode(); in combineOrCmpEqZeroToCtlzSrl()
36647 OR = (LHS->getOpcode() == ISD::OR) ? LHS.getNode() : RHS.getNode(); in combineOrCmpEqZeroToCtlzSrl()
36666 Ret = DAG.getNode(ISD::OR, SDLoc(OR), VT, NewLHS, NewRHS); in combineOrCmpEqZeroToCtlzSrl()
36683 Ret = DAG.getNode(ISD::OR, SDLoc(OR), VT, Ret, NewRHS); in combineOrCmpEqZeroToCtlzSrl()
36687 Ret = DAG.getNode(ISD::ZERO_EXTEND, SDLoc(N), N->getValueType(0), Ret); in combineOrCmpEqZeroToCtlzSrl()
36702 DAG.getNode(X86ISD::FOR, SDLoc(N), MVT::v4f32, in combineOr()
36805 return DAG.getNode(Opc, DL, VT, Op0, Op1, in combineOr()
36806 DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, ShAmt0)); in combineOr()
36811 return DAG.getNode(Opc, DL, VT, in combineOr()
36813 DAG.getNode(ISD::TRUNCATE, DL, in combineOr()
36827 return DAG.getNode(Opc, DL, VT, Op0, Op1.getOperand(0), in combineOr()
36828 DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, ShAmt0)); in combineOr()
36833 return DAG.getNode(Opc, DL, VT, Op0, Op1.getOperand(0), in combineOr()
36834 DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, ShAmt0)); in combineOr()
36891 Cond = DAG.getNode(ISD::ZERO_EXTEND, DL, ResultType, Cond); in foldXorTruncShiftIntoCmp()
36925 !ISD::isBuildVectorAllOnes(Ones.getNode())) in foldVectorXorShiftIntoCmp()
36940 return DAG.getNode(X86ISD::PCMPGT, SDLoc(N), VT, Shift.getOperand(0), Ones); in foldVectorXorShiftIntoCmp()
36990 ISD::isConstantSplatVector(V.getOperand(1).getNode(), Limit)) in detectUSatPattern()
37011 return DAG.getNode(ISD::SMAX, DL, InVT, SMin, In.getOperand(1)); in detectUSatPattern()
37035 ISD::isConstantSplatVector(V.getOperand(1).getNode(), C) && C == Limit) in detectSSatPattern()
37100 return DAG.getNode(X86ISD::VTRUNCS, DL, VT, SSatVal); in combineTruncateWithSat()
37102 return DAG.getNode(X86ISD::VTRUNCUS, DL, VT, USatVal); in combineTruncateWithSat()
37199 return DAG.getNode(X86ISD::AVG, DL, Ops[0].getValueType(), Ops); in detectAVGPattern()
37210 Operands[1] = DAG.getNode(ISD::SUB, DL, InVT, Operands[1], VecOnes); in detectAVGPattern()
37211 Operands[1] = DAG.getNode(ISD::TRUNCATE, DL, VT, Operands[1]); in detectAVGPattern()
37284 SDValue TF = DAG.getNode(ISD::TokenFactor, dl, MVT::Other, in combineLoad()
37288 SDValue NewVec = DAG.getNode(ISD::CONCAT_VECTORS, dl, RegVT, Load1, Load2); in combineLoad()
37380 SDValue Insert = DAG.getNode(ISD::INSERT_VECTOR_ELT, DL, VT, in reduceMaskedLoadToScalarLoad()
37388 if (!ISD::isBuildVectorOfConstantSDNodes(ML->getMask().getNode())) in combineMaskedLoadConstantMask()
37511 NewMask = DAG.getNode(ISD::CONCAT_VECTORS, dl, NewMaskVT, Ops); in combineMaskedLoad()
37541 SDValue Extract = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, EltVT, in reduceMaskedStoreToScalarStore()
37649 NewMask = DAG.getNode(ISD::CONCAT_VECTORS, dl, NewMaskVT, Ops); in combineMaskedStore()
37694 StoredVal = DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v8i1, Ops); in combineStore()
37703 ISD::isBuildVectorOfConstantSDNodes(StoredVal.getNode())) { in combineStore()
37726 return DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Ch0, Ch1); in combineStore()
37761 return DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Ch0, Ch1); in combineStore()
37855 SDValue SubVec = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, in combineStore()
37865 return DAG.getNode(ISD::TokenFactor, dl, MVT::Other, Chains); in combineStore()
37886 LoadSDNode *Ld = cast<LoadSDNode>(St->getValue().getNode()); in combineStore()
37940 return DAG.getNode(ISD::TokenFactor, StDL, MVT::Other, LoSt, HiSt); in combineStore()
37956 SDValue NewExtract = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, MVT::f64, in combineStore()
38015 ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(LHS.getNode())->getMask(); in isHorizontalBinOp()
38032 ArrayRef<int> Mask = cast<ShuffleVectorSDNode>(RHS.getNode())->getMask(); in isHorizontalBinOp()
38065 (!A.getNode() && (LIdx < (int)NumElts || RIdx < (int)NumElts)) || in isHorizontalBinOp()
38066 (!B.getNode() && (LIdx >= (int)NumElts || RIdx >= (int)NumElts))) in isHorizontalBinOp()
38073 unsigned Src = B.getNode() ? i >= NumEltsPer64BitChunk : 0; in isHorizontalBinOp()
38084 LHS = A.getNode() ? A : B; // If A is 'UNDEF', use B for it. in isHorizontalBinOp()
38085 RHS = B.getNode() ? B : A; // If B is 'UNDEF', use A for it. in isHorizontalBinOp()
38104 return DAG.getNode(HorizOpcode, SDLoc(N), VT, LHS, RHS); in combineFaddFsub()
38141 return ISD::isBuildVectorOfConstantSDNodes(Op.getNode()); in combineTruncatedArithmetic()
38145 SDValue Trunc0 = DAG.getNode(ISD::TRUNCATE, DL, VT, N0); in combineTruncatedArithmetic()
38146 SDValue Trunc1 = DAG.getNode(ISD::TRUNCATE, DL, VT, N1); in combineTruncatedArithmetic()
38147 return DAG.getNode(Opcode, DL, VT, Trunc0, Trunc1); in combineTruncatedArithmetic()
38229 SDValue Sub = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubRegVT, In, in combineVectorTruncationWithPACKUS()
38231 SubVecs[i] = DAG.getNode(ISD::AND, DL, SubRegVT, Sub, MaskVal); in combineVectorTruncationWithPACKUS()
38233 In = DAG.getNode(ISD::CONCAT_VECTORS, DL, InVT, SubVecs); in combineVectorTruncationWithPACKUS()
38245 In = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, InVT, In, in combineVectorTruncationWithPACKSS()
38380 if (!ISD::isConstantSplatVector(Src.getOperand(1).getNode(), ShiftAmt) || in combinePMULH()
38401 return DAG.getNode(Opc, DL, VT, LHS, RHS); in combinePMULH()
38537 return DAG.getNode(X86ISD::VPMADDUBSW, DL, ResVT, Ops[0], Ops[1]); in detectPMADDUBSW()
38574 return DAG.getNode(X86ISD::MMX_MOVD2W, DL, MVT::i32, BCSrc); in combineTruncate()
38599 if (auto SVOp = dyn_cast<ShuffleVectorSDNode>(Op.getNode())) { in isFNEG()
38604 if (SDValue NegOp0 = isFNEG(DAG, SVOp->getOperand(0).getNode())) in isFNEG()
38617 if (SDValue NegInsVal = isFNEG(DAG, InsVal.getNode())) in isFNEG()
38618 return DAG.getNode(ISD::INSERT_VECTOR_ELT, SDLoc(Op), VT, InsVector, in isFNEG()
38678 SDValue NewNode = DAG.getNode(X86ISD::FNMSUB, DL, VT, Arg.getOperand(0), in combineFneg()
38702 return DAG.getBitcast(OrigVT, DAG.getNode(NewOpcode, DL, VT, in combineFneg()
38703 Arg.getNode()->ops())); in combineFneg()
38731 SDValue IntOp = DAG.getNode(IntOpcode, dl, IntVT, Op0, Op1); in lowerX86FPLogicOp()
38759 MVT::v4i32, DAG.getNode(X86ISD::FXOR, SDLoc(N), MVT::v4f32, in combineXor()
38799 return DAG.getNode(X86ISD::BEXTR, SDLoc(N), VT, Op0, in combineBEXTR()
38812 return isNullFPConstant(V) || ISD::isBuildVectorAllZeros(V.getNode()); in isNullFPScalarOrVectorConst()
38847 return ISD::isBuildVectorAllOnes(V.getNode()); in combineFAndFNotToFAndn()
38854 return DAG.getNode(X86ISD::FANDN, DL, VT, N0.getOperand(0), N1); in combineFAndFNotToFAndn()
38858 return DAG.getNode(X86ISD::FANDN, DL, VT, N1.getOperand(0), N0); in combineFAndFNotToFAndn()
38930 return DAG.getNode(NewOp, SDLoc(N), N->getValueType(0), in combineFMinFMax()
38956 return DAG.getNode(MinMaxOp, DL, VT, Op0, Op1, N->getFlags()); in combineFMinNumFMaxNum()
38985 SDValue MinOrMax = DAG.getNode(MinMaxOp, DL, VT, Op1, Op0); in combineFMinNumFMaxNum()
39014 if (ISD::isBuildVectorAllZeros(N->getOperand(0).getNode())) in combineAndnp()
39018 if (ISD::isBuildVectorAllZeros(N->getOperand(1).getNode())) in combineAndnp()
39023 ISD::isBuildVectorAllOnes(N->getOperand(0).getOperand(1).getNode())) { in combineAndnp()
39024 return DAG.getNode(ISD::AND, SDLoc(N), VT, in combineAndnp()
39049 return DAG.getNode(X86ISD::BT, SDLoc(N), MVT::i32, N0, DemandedN1); in combineBT()
39077 if (!isa<ConstantSDNode>(CMovOp0.getNode()) || in combineSextInRegCmov()
39078 !isa<ConstantSDNode>(CMovOp1.getNode())) in combineSextInRegCmov()
39085 CMovOp0 = DAG.getNode(ISD::ANY_EXTEND, DL, VT, CMovOp0); in combineSextInRegCmov()
39086 CMovOp1 = DAG.getNode(ISD::ANY_EXTEND, DL, VT, CMovOp1); in combineSextInRegCmov()
39089 CMovOp0 = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, VT, CMovOp0, N1); in combineSextInRegCmov()
39090 CMovOp1 = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, VT, CMovOp1, N1); in combineSextInRegCmov()
39092 return DAG.getNode(X86ISD::CMOV, DL, VT, CMovOp0, CMovOp1, in combineSextInRegCmov()
39119 if (!ISD::isNormalLoad(N00.getNode())) in combineSignExtendInReg()
39123 SDValue Tmp = DAG.getNode(ISD::SIGN_EXTEND_INREG, dl, MVT::v4i32, in combineSignExtendInReg()
39125 return DAG.getNode(ISD::SIGN_EXTEND, dl, MVT::v4i64, Tmp); in combineSignExtendInReg()
39185 SDValue NewExt = DAG.getNode(Ext->getOpcode(), SDLoc(Ext), VT, AddOp0); in promoteExtBeforeAdd()
39193 return DAG.getNode(ISD::ADD, SDLoc(Add), VT, NewExt, NewConstant, Flags); in promoteExtBeforeAdd()
39221 if (!isa<ConstantSDNode>(CMovOp0.getNode()) || in combineToExtendCMOV()
39222 !isa<ConstantSDNode>(CMovOp1.getNode())) in combineToExtendCMOV()
39240 CMovOp0 = DAG.getNode(ExtendOpcode, DL, ExtendVT, CMovOp0); in combineToExtendCMOV()
39241 CMovOp1 = DAG.getNode(ExtendOpcode, DL, ExtendVT, CMovOp1); in combineToExtendCMOV()
39243 SDValue Res = DAG.getNode(X86ISD::CMOV, DL, ExtendVT, CMovOp0, CMovOp1, in combineToExtendCMOV()
39248 Res = DAG.getNode(ExtendOpcode, DL, TargetVT, Res); in combineToExtendCMOV()
39304 Vec = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, BroadcastVT, N00); in combineToExtendBoolVectorInReg()
39314 Vec = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, VT, Scl); in combineToExtendBoolVectorInReg()
39327 Vec = DAG.getNode(ISD::AND, DL, VT, Vec, BitMask); in combineToExtendBoolVectorInReg()
39338 return DAG.getNode(ISD::SRL, DL, VT, Vec, in combineToExtendBoolVectorInReg()
39405 return DAG.getNode(ISD::CONCAT_VECTORS, DL, OutVT, Opnds); in combineToExtendVectorInReg()
39415 SDValue SExt = DAG.getNode(Opcode, DL, ExVT, Ex); in combineToExtendVectorInReg()
39416 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, SExt, in combineToExtendVectorInReg()
39429 return DAG.getNode(Opcode, DL, VT, ExOp); in combineToExtendVectorInReg()
39443 SDValue SrcVec = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, InSubVT, N0, in combineToExtendVectorInReg()
39446 SrcVec = DAG.getNode(IROpc, DL, SubVT, SrcVec); in combineToExtendVectorInReg()
39449 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Opnds); in combineToExtendVectorInReg()
39531 SDValue Zext = DAG.getNode(ISD::ZERO_EXTEND, DL, VT, N0.getOperand(0)); in combineSext()
39532 return DAG.getNode(ISD::SUB, DL, VT, Zext, DAG.getConstant(1, DL, VT)); in combineSext()
39601 if (SDValue NegVal = isFNEG(DAG, V.getNode())) { in combineFMA()
39609 if (SDValue NegVal = isFNEG(DAG, V.getOperand(0).getNode())) { in combineFMA()
39611 V = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, SDLoc(V), V.getValueType(), in combineFMA()
39632 return DAG.getNode(NewOpcode, dl, VT, A, B, C, N->getOperand(3)); in combineFMA()
39633 return DAG.getNode(NewOpcode, dl, VT, A, B, C); in combineFMA()
39642 SDValue NegVal = isFNEG(DAG, N->getOperand(2).getNode()); in combineFMADDSUB()
39656 return DAG.getNode(NewOpcode, dl, VT, N->getOperand(0), N->getOperand(1), in combineFMADDSUB()
39658 return DAG.getNode(NewOpcode, dl, VT, N->getOperand(0), N->getOperand(1), in combineFMADDSUB()
39680 return DAG.getNode(ISD::AND, dl, VT, in combineZext()
39681 DAG.getNode(X86ISD::SETCC_CARRY, dl, VT, in combineZext()
39692 return DAG.getNode(ISD::AND, dl, VT, in combineZext()
39693 DAG.getNode(X86ISD::SETCC_CARRY, dl, VT, in combineZext()
39778 Cmp = DAG.getNode(ISD::AND, DL, CmpVT, Cmp1, Cmp2); in combineVectorSizedSetCCEquality()
39793 SDValue MovMsk = DAG.getNode(X86ISD::MOVMSK, DL, MVT::i32, Cmp); in combineVectorSizedSetCCEquality()
39816 SDValue Add = DAG.getNode(ISD::ADD, DL, OpVT, RHS, LHS.getOperand(1)); in combineSetCC()
39823 SDValue Add = DAG.getNode(ISD::ADD, DL, OpVT, LHS, RHS.getOperand(1)); in combineSetCC()
39842 bool IsVZero1 = ISD::isBuildVectorAllZeros(RHS.getNode()); in combineSetCC()
39871 SDValue Setcc = DAG.getNode(ISD::SETCC, DL, OpVT, LHS, RHS, in combineSetCC()
39873 return DAG.getNode(ISD::TRUNCATE, DL, VT, Setcc); in combineSetCC()
39892 if (ISD::isBuildVectorOfConstantSDNodes(Src.getNode())) { in combineMOVMSK()
39925 ISD::isBuildVectorAllZeros(Src.getOperand(1).getNode()) && in combineMOVMSK()
39929 ISD::isConstantSplatVector(And.getOperand(1).getNode(), SplatVal) && in combineMOVMSK()
39943 SDValue Shl = DAG.getNode(ISD::SHL, DL, VT, X, in combineMOVMSK()
39946 return DAG.getNode(X86ISD::MOVMSK, SDLoc(N), N->getValueType(0), Cast); in combineMOVMSK()
39972 DCI.AddToWorklist(Index.getNode()); in combineGatherScatter()
40006 DCI.AddToWorklist(Index.getNode()); in combineGatherScatter()
40052 return DAG.getNode(X86ISD::BRCOND, DL, N->getVTList(), N->getOperand(0), in combineBrCond()
40093 SDValue SourceConst = DAG.getNode(N->getOpcode(), DL, VT, SDValue(BV, 0)); in combineVectorCompareAndMaskUnaryOp()
40096 SDValue NewAnd = DAG.getNode(ISD::AND, DL, IntVT, in combineVectorCompareAndMaskUnaryOp()
40118 SDValue P = DAG.getNode(ISD::ZERO_EXTEND, dl, DstVT, Op0); in combineUIntToFP()
40121 return DAG.getNode(ISD::SINT_TO_FP, dl, VT, P); in combineUIntToFP()
40128 return DAG.getNode(ISD::SINT_TO_FP, SDLoc(N), VT, Op0); in combineUIntToFP()
40152 SDValue P = DAG.getNode(ISD::SIGN_EXTEND, dl, DstVT, Op0); in combineSIntToFP()
40153 return DAG.getNode(ISD::SINT_TO_FP, dl, VT, P); in combineSIntToFP()
40168 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, dl, TruncVT, Op0); in combineSIntToFP()
40169 return DAG.getNode(ISD::SINT_TO_FP, dl, VT, Trunc); in combineSIntToFP()
40177 LoadSDNode *Ld = cast<LoadSDNode>(Op0.getNode()); in combineSIntToFP()
40190 ISD::isNON_EXTLoad(Op0.getNode()) && Op0.hasOneUse() && in combineSIntToFP()
40292 Op = DAG.getNode(ISD::AND, dl, VT, Op.getOperand(0), in combineCMP()
40294 return DAG.getNode(X86ISD::CMP, dl, MVT::i32, Op, in combineCMP()
40338 SDValue Op0 = DAG.getNode(ISD::TRUNCATE, dl, VT, Op.getOperand(0)); in combineCMP()
40339 SDValue Op1 = DAG.getNode(ISD::TRUNCATE, dl, VT, Op.getOperand(1)); in combineCMP()
40343 Op = DAG.getNode(NewOpc, dl, VTs, Op0, Op1); in combineCMP()
40347 return DAG.getNode(X86ISD::CMP, dl, MVT::i32, Op, in combineCMP()
40358 return DAG.getNode(X86ISD::SBB, SDLoc(N), VTs, in combineSBB()
40380 SDValue Res1 = DAG.getNode(ISD::AND, DL, VT, in combineADC()
40381 DAG.getNode(X86ISD::SETCC_CARRY, DL, VT, in combineADC()
40392 return DAG.getNode(X86ISD::ADC, SDLoc(N), VTs, in combineADC()
40444 return DAG.getNode(X86ISD::SETCC_CARRY, DL, VT, in combineAddOrSubToADCOrSBB()
40458 SDValue NewSub = DAG.getNode( in combineAddOrSubToADCOrSBB()
40459 X86ISD::SUB, SDLoc(EFLAGS), EFLAGS.getNode()->getVTList(), in combineAddOrSubToADCOrSBB()
40461 SDValue NewEFLAGS = SDValue(NewSub.getNode(), EFLAGS.getResNo()); in combineAddOrSubToADCOrSBB()
40462 return DAG.getNode(X86ISD::SETCC_CARRY, DL, VT, in combineAddOrSubToADCOrSBB()
40472 return DAG.getNode(IsSub ? X86ISD::SBB : X86ISD::ADC, DL, in combineAddOrSubToADCOrSBB()
40488 SDValue NewSub = DAG.getNode(X86ISD::SUB, SDLoc(EFLAGS), in combineAddOrSubToADCOrSBB()
40489 EFLAGS.getNode()->getVTList(), in combineAddOrSubToADCOrSBB()
40491 SDValue NewEFLAGS = SDValue(NewSub.getNode(), EFLAGS.getResNo()); in combineAddOrSubToADCOrSBB()
40492 return DAG.getNode(IsSub ? X86ISD::SBB : X86ISD::ADC, DL, in combineAddOrSubToADCOrSBB()
40521 SDValue Neg = DAG.getNode(X86ISD::SUB, DL, X86SubVTs, Zero, Z); in combineAddOrSubToADCOrSBB()
40522 return DAG.getNode(X86ISD::SETCC_CARRY, DL, VT, in combineAddOrSubToADCOrSBB()
40524 SDValue(Neg.getNode(), 1)); in combineAddOrSubToADCOrSBB()
40534 SDValue Cmp1 = DAG.getNode(X86ISD::CMP, DL, MVT::i32, Z, One); in combineAddOrSubToADCOrSBB()
40535 return DAG.getNode(X86ISD::SETCC_CARRY, DL, VT, in combineAddOrSubToADCOrSBB()
40542 SDValue Cmp1 = DAG.getNode(X86ISD::CMP, DL, MVT::i32, Z, One); in combineAddOrSubToADCOrSBB()
40550 return DAG.getNode(IsSub ? X86ISD::ADC : X86ISD::SBB, DL, VTs, X, in combineAddOrSubToADCOrSBB()
40555 return DAG.getNode(IsSub ? X86ISD::SBB : X86ISD::ADC, DL, VTs, X, in combineAddOrSubToADCOrSBB()
40580 if (!canReduceVMulWidth(Op0.getNode(), DAG, Mode) || Mode == MULU16) in combineLoopMAddPattern()
40593 return DAG.getNode(X86ISD::VPMADDWD, DL, VT, Ops); in combineLoopMAddPattern()
40598 SDValue N0 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, Mul.getOperand(0)); in combineLoopMAddPattern()
40599 SDValue N1 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, Mul.getOperand(1)); in combineLoopMAddPattern()
40604 return DAG.getNode(ISD::CONCAT_VECTORS, DL, VT, Madd, in combineLoopMAddPattern()
40612 canReduceVMulWidth(Op1.getNode(), DAG, Mode) && Mode != MULU16) { in combineLoopMAddPattern()
40616 return DAG.getNode(ISD::ADD, DL, VT, Op0, Op1); in combineLoopMAddPattern()
40668 Sad = DAG.getNode(ISD::BITCAST, DL, ResVT, Sad); in combineLoopSADPattern()
40670 Sad = DAG.getNode(ISD::TRUNCATE, DL, VT, Sad); in combineLoopSADPattern()
40675 Sad = DAG.getNode(ISD::INSERT_SUBVECTOR, DL, VT, Zero, Sad, in combineLoopSADPattern()
40695 return DAG.getNode(ISD::ADD, DL, VT, Op0, Op1); in combineLoopSADPattern()
40720 return DAG.getNode(NewOpcode, SDLoc(N), VT, N->getOperand(0), AllOnesVec); in combineIncDecVector()
40808 if (!canReduceVMulWidth(Mul.getNode(), DAG, Mode) || Mode == MULU16) in matchPMADDWD()
40823 return DAG.getNode(X86ISD::VPMADDWD, DL, ResVT, in matchPMADDWD()
40824 DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Ops[0]), in matchPMADDWD()
40825 DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Ops[1])); in matchPMADDWD()
40861 return DAG.getNode(ISD::USUBSAT, DL, VT, Op0.getOperand(0), in combineAddToSUBUS()
40980 return DAG.getNode(X86ISD::VPMADDWD, DL, ResVT, Ops[0], Ops[1]); in matchPMADDWD_2()
41011 return DAG.getNode(X86ISD::HADD, DL, Ops[0].getValueType(), Ops); in combineAdd()
41070 return DAG.getNode(ISD::USUBSAT, DL, Ops[0].getValueType(), Ops); in combineSubToSubus()
41101 SDValue UMin = DAG.getNode(ISD::UMIN, SDLoc(SubusLHS), ExtType, SubusRHS, in combineSubToSubus()
41129 SDValue NewXor = DAG.getNode(ISD::XOR, SDLoc(Op1), VT, in combineSub()
41132 return DAG.getNode(ISD::ADD, SDLoc(N), VT, NewXor, in combineSub()
41145 return DAG.getNode(X86ISD::HSUB, DL, Ops[0].getValueType(), Ops); in combineSub()
41193 if (ISD::isBuildVectorAllZeros(Vec.getNode())) { in combineInsertSubvector()
41195 if (ISD::isBuildVectorAllZeros(SubVec.getNode())) in combineInsertSubvector()
41201 ISD::isBuildVectorAllZeros(SubVec.getOperand(0).getNode())) { in combineInsertSubvector()
41203 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, OpVT, in combineInsertSubvector()
41218 ISD::isBuildVectorAllZeros(Ins.getOperand(0).getNode()) && in combineInsertSubvector()
41220 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, OpVT, in combineInsertSubvector()
41233 SDValue Insert = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, NewVT, in combineInsertSubvector()
41305 return DAG.getNode(X86ISD::SUBV_BROADCAST, dl, OpVT, SubVec); in combineInsertSubvector()
41310 return DAG.getNode(X86ISD::SUBV_BROADCAST, dl, OpVT, in combineInsertSubvector()
41316 if (ISD::isBuildVectorAllZeros(SubVec.getNode())) in combineInsertSubvector()
41317 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, OpVT, in combineInsertSubvector()
41326 Vec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, OpVT, DAG.getUNDEF(OpVT), in combineInsertSubvector()
41328 return DAG.getNode(ISD::INSERT_SUBVECTOR, dl, OpVT, Vec, SubVec, in combineInsertSubvector()
41369 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, SDLoc(N), VT, in combineExtractSubvector()
41381 if (ISD::isBuildVectorAllZeros(InVec.getNode())) in combineExtractSubvector()
41384 if (ISD::isBuildVectorAllOnes(InVec.getNode())) { in combineExtractSubvector()
41393 InVec.getNode()->ops().slice(IdxVal, OpVT.getVectorNumElements())); in combineExtractSubvector()
41403 return DAG.getNode(X86ISD::CVTSI2P, SDLoc(N), OpVT, InVec.getOperand(0)); in combineExtractSubvector()
41408 return DAG.getNode(X86ISD::VFPEXT, SDLoc(N), OpVT, InVec.getOperand(0)); in combineExtractSubvector()
41417 return DAG.getNode(ExtOp, SDLoc(N), OpVT, InVec.getOperand(0)); in combineExtractSubvector()
41423 return DAG.getNode(InOpcode, SDLoc(N), OpVT, InVec.getOperand(0)); in combineExtractSubvector()
41431 DAG.getNode(X86ISD::PSHUFB, DL, MVT::v16i8, in combineExtractSubvector()
41453 return DAG.getNode(ISD::SCALAR_TO_VECTOR, SDLoc(N), MVT::v1i1, in combineScalarToVector()
41462 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, SDLoc(N), VT, in combineScalarToVector()
41477 return DAG.getNode(N->getOpcode(), SDLoc(N), N->getValueType(0), RHS, LHS); in combinePMULDQ()
41480 if (ISD::isBuildVectorAllZeros(RHS.getNode())) in combinePMULDQ()
41488 return DAG.getNode(N->getOpcode(), SDLoc(N), N->getValueType(0), in combinePMULDQ()
41684 return DAG.getNode(X86ISD::NT_BRIND, dl, MVT::Other, Value, Addr); in expandIndirectJTBranch()
42297 if (Result.getNode()) { in LowerAsmOperandForConstraint()