Lines Matching refs:Part

2360   for (unsigned Part = 0; Part < State.UF; ++Part) {  in buildScalarSteps()  local
2361 Value *StartIdx0 = createStepForVF(Builder, IntStepTy, State.VF, Part); in buildScalarSteps()
2370 State.set(Def, Add, Part); in buildScalarSteps()
2389 State.set(Def, Add, VPIteration(Part, Lane)); in buildScalarSteps()
2495 Value *VectorValue = State.get(Def, Instance.Part); in packScalarIntoVectorValue()
2499 State.set(Def, VectorValue, Instance.Part); in packScalarIntoVectorValue()
2571 for (unsigned Part = 0; Part < UF; Part++) { in vectorizeInterleaveGroup() local
2572 Value *AddrPart = State.get(Addr, VPIteration(Part, 0)); in vectorizeInterleaveGroup()
2612 for (unsigned Part = 0; Part < UF; Part++) { in vectorizeInterleaveGroup() local
2619 Value *BlockInMaskPart = State.get(BlockInMask, Part); in vectorizeInterleaveGroup()
2630 Builder.CreateMaskedLoad(VecTy, AddrParts[Part], Group->getAlign(), in vectorizeInterleaveGroup()
2634 NewLoad = Builder.CreateAlignedLoad(VecTy, AddrParts[Part], in vectorizeInterleaveGroup()
2652 for (unsigned Part = 0; Part < UF; Part++) { in vectorizeInterleaveGroup() local
2654 NewLoads[Part], StrideMask, "strided.vec"); in vectorizeInterleaveGroup()
2666 State.set(VPDefs[J], StridedVec, Part); in vectorizeInterleaveGroup()
2682 for (unsigned Part = 0; Part < UF; Part++) { in vectorizeInterleaveGroup() local
2697 Value *StoredVec = State.get(StoredValues[i], Part); in vectorizeInterleaveGroup()
2722 Value *BlockInMaskPart = State.get(BlockInMask, Part); in vectorizeInterleaveGroup()
2731 NewStoreInstr = Builder.CreateMaskedStore(IVec, AddrParts[Part], in vectorizeInterleaveGroup()
2735 Builder.CreateAlignedStore(IVec, AddrParts[Part], Group->getAlign()); in vectorizeInterleaveGroup()
3522 for (unsigned Part = 0; Part < UF; ++Part) { in truncateToMinimalBitwidths() local
3523 Value *I = State.get(Def, Part); in truncateToMinimalBitwidths()
3617 State.reset(Def, Res, Part); in truncateToMinimalBitwidths()
3630 for (unsigned Part = 0; Part < UF; ++Part) { in truncateToMinimalBitwidths() local
3631 Value *I = State.get(Def, Part); in truncateToMinimalBitwidths()
3636 State.reset(Def, NewI, Part); in truncateToMinimalBitwidths()
3880 for (unsigned Part = 0; Part < UF; ++Part) { in fixReduction() local
3881 Value *VecLoopExitInst = State.get(LoopExitInstDef, Part); in fixReduction()
3891 State.reset(LoopExitInstDef, Sel, Part); in fixReduction()
3906 cast<PHINode>(State.get(PhiR, Part)); in fixReduction()
3920 for (unsigned Part = 0; Part < UF; ++Part) { in fixReduction() local
3921 RdxParts[Part] = State.get(LoopExitInstDef, Part); in fixReduction()
3922 Value *Trunc = Builder.CreateTrunc(RdxParts[Part], RdxVecTy); in fixReduction()
3925 for (User *U : llvm::make_early_inc_range(RdxParts[Part]->users())) in fixReduction()
3927 U->replaceUsesOfWith(RdxParts[Part], Extnd); in fixReduction()
3928 RdxParts[Part] = Extnd; in fixReduction()
3932 for (unsigned Part = 0; Part < UF; ++Part) { in fixReduction() local
3933 RdxParts[Part] = Builder.CreateTrunc(RdxParts[Part], RdxVecTy); in fixReduction()
3934 State.reset(LoopExitInstDef, RdxParts[Part], Part); in fixReduction()
3956 for (unsigned Part = 1; Part < UF; ++Part) { in fixReduction() local
3957 Value *RdxPart = State.get(LoopExitInstDef, Part); in fixReduction()
4055 for (unsigned Part = 0; Part < UF; ++Part) { in clearReductionWrapFlags() local
4056 Value *V = State.get(Cur, Part); in clearReductionWrapFlags()
4199 for (unsigned Part = 0; Part < UF; ++Part) { in widenCallInstruction() local
4208 Arg = State.get(I.value(), Part); in widenCallInstruction()
4240 State.set(Def, V, Part); in widenCallInstruction()
9311 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9312 State.set(this, LastInduction, Part); in execute()
9353 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9355 createStepForVF(State.Builder, PtrInd->getType(), State.VF, Part); in execute()
9367 State.set(this, SclrGep, VPIteration(Part, Lane)); in execute()
9410 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9413 State.Builder.CreateMul(RuntimeVF, ConstantInt::get(PhiType, Part)); in execute()
9426 State.set(this, GEP, Part); in execute()
9469 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9474 getRuntimeVFAsFloat(State.Builder, Step->getType(), State.VF * Part); in execute()
9481 getRuntimeVF(State.Builder, Step->getType(), State.VF * Part); in execute()
9485 State.set(this, EntryPart, Part); in execute()
9503 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9504 Value *NewVecOp = State.get(getVecOp(), Part); in execute()
9506 Value *NewCond = State.get(Cond, Part); in execute()
9527 PrevInChain = State.get(getChainOp(), Part); in execute()
9540 State.set(this, NextInChain, Part); in execute()
9556 State.set(this, Poison, State.Instance->Part); in execute()
9566 for (unsigned Part = 0; Part < State.UF; ++Part) in execute() local
9568 VPIteration(Part, 0), IsPredicated, in execute()
9576 for (unsigned Part = 0; Part < State.UF; ++Part) in execute() local
9579 VPIteration(Part, Lane), IsPredicated, in execute()
9604 for (unsigned Part = 0; Part < State.UF; ++Part) in execute() local
9605 BlockInMaskParts[Part] = State.get(getMask(), Part); in execute()
9607 const auto CreateVecPtr = [&](unsigned Part, Value *Ptr) -> Value * { in execute() argument
9621 Value *NumElt = Builder.CreateMul(Builder.getInt32(-Part), RunTimeVF); in execute()
9631 BlockInMaskParts[Part] = in execute()
9632 Builder.CreateVectorReverse(BlockInMaskParts[Part], "reverse"); in execute()
9635 createStepForVF(Builder, Builder.getInt32Ty(), State.VF, Part); in execute()
9649 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9651 Value *StoredVal = State.get(StoredValue, Part); in execute()
9653 Value *MaskPart = isMaskRequired ? BlockInMaskParts[Part] : nullptr; in execute()
9654 Value *VectorGep = State.get(getAddr(), Part); in execute()
9666 CreateVecPtr(Part, State.get(getAddr(), VPIteration(0, 0))); in execute()
9669 BlockInMaskParts[Part]); in execute()
9681 for (unsigned Part = 0; Part < State.UF; ++Part) { in execute() local
9684 Value *MaskPart = isMaskRequired ? BlockInMaskParts[Part] : nullptr; in execute()
9685 Value *VectorGep = State.get(getAddr(), Part); in execute()
9691 CreateVecPtr(Part, State.get(getAddr(), VPIteration(0, 0))); in execute()
9694 DataTy, VecPtr, Alignment, BlockInMaskParts[Part], in execute()
9706 State.set(getVPSingleValue(), NewLI, Part); in execute()
9759 Value *VPTransformState::get(VPValue *Def, unsigned Part) { in get() argument
9761 if (hasVectorValue(Def, Part)) in get()
9762 return Data.PerPartOutput[Def][Part]; in get()
9764 if (!hasScalarValue(Def, {Part, 0})) { in get()
9767 set(Def, B, Part); in get()
9771 Value *ScalarValue = get(Def, {Part, 0}); in get()
9775 set(Def, ScalarValue, Part); in get()
9784 if (!hasScalarValue(Def, {Part, LastLane})) { in get()
9793 auto *LastInst = cast<Instruction>(get(Def, {Part, LastLane})); in get()
9813 set(Def, VectorValue, Part); in get()
9818 set(Def, Undef, Part); in get()
9820 ILV->packScalarIntoVectorValue(Def, {Part, Lane}, *this); in get()
9821 VectorValue = get(Def, Part); in get()