Lines Matching refs:VPIntrin
7367 static unsigned getISDForVPIntrinsic(const VPIntrinsic &VPIntrin) { in getISDForVPIntrinsic() argument
7369 switch (VPIntrin.getIntrinsicID()) { in getISDForVPIntrinsic()
7383 if (VPIntrin.getFastMathFlags().allowReassoc()) in getISDForVPIntrinsic()
7391 void SelectionDAGBuilder::visitVPLoadGather(const VPIntrinsic &VPIntrin, EVT VT, in visitVPLoadGather() argument
7396 Value *PtrOperand = VPIntrin.getArgOperand(0); in visitVPLoadGather()
7397 MaybeAlign Alignment = VPIntrin.getPointerAlignment(); in visitVPLoadGather()
7398 AAMDNodes AAInfo = VPIntrin.getAAMetadata(); in visitVPLoadGather()
7399 const MDNode *Ranges = VPIntrin.getMetadata(LLVMContext::MD_range); in visitVPLoadGather()
7426 this, VPIntrin.getParent(), in visitVPLoadGather()
7448 setValue(&VPIntrin, LD); in visitVPLoadGather()
7451 void SelectionDAGBuilder::visitVPStoreScatter(const VPIntrinsic &VPIntrin, in visitVPStoreScatter() argument
7456 Value *PtrOperand = VPIntrin.getArgOperand(1); in visitVPStoreScatter()
7458 MaybeAlign Alignment = VPIntrin.getPointerAlignment(); in visitVPStoreScatter()
7459 AAMDNodes AAInfo = VPIntrin.getAAMetadata(); in visitVPStoreScatter()
7483 this, VPIntrin.getParent(), in visitVPStoreScatter()
7504 setValue(&VPIntrin, ST); in visitVPStoreScatter()
7508 const VPIntrinsic &VPIntrin, EVT VT, SmallVectorImpl<SDValue> &OpValues) { in visitVPStridedLoad() argument
7510 Value *PtrOperand = VPIntrin.getArgOperand(0); in visitVPStridedLoad()
7511 MaybeAlign Alignment = VPIntrin.getPointerAlignment(); in visitVPStridedLoad()
7514 AAMDNodes AAInfo = VPIntrin.getAAMetadata(); in visitVPStridedLoad()
7515 const MDNode *Ranges = VPIntrin.getMetadata(LLVMContext::MD_range); in visitVPStridedLoad()
7529 setValue(&VPIntrin, LD); in visitVPStridedLoad()
7533 const VPIntrinsic &VPIntrin, SmallVectorImpl<SDValue> &OpValues) { in visitVPStridedStore() argument
7535 Value *PtrOperand = VPIntrin.getArgOperand(1); in visitVPStridedStore()
7537 MaybeAlign Alignment = VPIntrin.getPointerAlignment(); in visitVPStridedStore()
7540 AAMDNodes AAInfo = VPIntrin.getAAMetadata(); in visitVPStridedStore()
7552 setValue(&VPIntrin, ST); in visitVPStridedStore()
7555 void SelectionDAGBuilder::visitVPCmp(const VPCmpIntrinsic &VPIntrin) { in visitVPCmp() argument
7560 CmpInst::Predicate CondCode = VPIntrin.getPredicate(); in visitVPCmp()
7561 bool IsFP = VPIntrin.getOperand(0)->getType()->isFPOrFPVectorTy(); in visitVPCmp()
7573 SDValue Op1 = getValue(VPIntrin.getOperand(0)); in visitVPCmp()
7574 SDValue Op2 = getValue(VPIntrin.getOperand(1)); in visitVPCmp()
7576 SDValue MaskOp = getValue(VPIntrin.getOperand(3)); in visitVPCmp()
7577 SDValue EVL = getValue(VPIntrin.getOperand(4)); in visitVPCmp()
7584 VPIntrin.getType()); in visitVPCmp()
7585 setValue(&VPIntrin, in visitVPCmp()
7590 const VPIntrinsic &VPIntrin) { in visitVectorPredicationIntrinsic() argument
7592 unsigned Opcode = getISDForVPIntrinsic(VPIntrin); in visitVectorPredicationIntrinsic()
7594 auto IID = VPIntrin.getIntrinsicID(); in visitVectorPredicationIntrinsic()
7596 if (const auto *CmpI = dyn_cast<VPCmpIntrinsic>(&VPIntrin)) in visitVectorPredicationIntrinsic()
7601 ComputeValueVTs(TLI, DAG.getDataLayout(), VPIntrin.getType(), ValueVTs); in visitVectorPredicationIntrinsic()
7612 for (unsigned I = 0; I < VPIntrin.arg_size(); ++I) { in visitVectorPredicationIntrinsic()
7613 auto Op = getValue(VPIntrin.getArgOperand(I)); in visitVectorPredicationIntrinsic()
7622 if (auto *FPMO = dyn_cast<FPMathOperator>(&VPIntrin)) in visitVectorPredicationIntrinsic()
7625 setValue(&VPIntrin, Result); in visitVectorPredicationIntrinsic()
7630 visitVPLoadGather(VPIntrin, ValueVTs[0], OpValues, in visitVectorPredicationIntrinsic()
7634 visitVPStridedLoad(VPIntrin, ValueVTs[0], OpValues); in visitVectorPredicationIntrinsic()
7638 visitVPStoreScatter(VPIntrin, OpValues, Opcode == ISD::VP_SCATTER); in visitVectorPredicationIntrinsic()
7641 visitVPStridedStore(VPIntrin, OpValues); in visitVectorPredicationIntrinsic()