Lines Matching defs:Builder

91                       IRBuilder<> &Builder);
96 GetElementPtrInst *GEP, IRBuilder<> &Builder);
111 IRBuilder<> &Builder);
114 IRBuilder<> &Builder,
118 IRBuilder<> &Builder,
124 IRBuilder<> &Builder);
127 IRBuilder<> &Builder,
131 IRBuilder<> &Builder,
137 IRBuilder<> &Builder);
143 IRBuilder<> &Builder);
149 IRBuilder<> &Builder);
157 IRBuilder<> &Builder);
230 IRBuilder<> &Builder) {
232 if (Value *V = decomposeGEP(Offsets, Ty, GEP, Builder)) {
246 Value *Zero = ConstantInt::get(Builder.getInt32Ty(), 0);
247 Value *BasePtr = Builder.CreateIntToPtr(Zero, Builder.getPtrTy());
248 Offsets = Builder.CreatePtrToInt(
249 Ptr, FixedVectorType::get(Builder.getInt32Ty(), 4));
257 IRBuilder<> &Builder) {
300 Offsets = Builder.CreateTrunc(Offsets, Ty);
302 Offsets = Builder.CreateZExt(Offsets, VectorType::getInteger(Ty));
421 IRBuilder<> Builder(I->getContext());
422 Builder.SetInsertPoint(I);
423 Builder.SetCurrentDebugLocation(I->getDebugLoc());
427 Instruction *Load = tryCreateIncrementingGatScat(I, Ptr, Builder);
429 Load = tryCreateMaskedGatherOffset(I, Ptr, Root, Builder);
431 Load = tryCreateMaskedGatherBase(I, Ptr, Builder);
439 Builder.Insert(Load);
455 IntrinsicInst *I, Value *Ptr, IRBuilder<> &Builder, int64_t Increment) {
464 return Builder.CreateIntrinsic(Intrinsic::arm_mve_vldr_gather_base,
466 {Ptr, Builder.getInt32(Increment)});
468 return Builder.CreateIntrinsic(
471 {Ptr, Builder.getInt32(Increment), Mask});
475 IntrinsicInst *I, Value *Ptr, IRBuilder<> &Builder, int64_t Increment) {
485 return Builder.CreateIntrinsic(Intrinsic::arm_mve_vldr_gather_base_wb,
487 {Ptr, Builder.getInt32(Increment)});
489 return Builder.CreateIntrinsic(
492 {Ptr, Builder.getInt32(Increment), Mask});
496 IntrinsicInst *I, Value *Ptr, Instruction *&Root, IRBuilder<> &Builder) {
551 Ptr, Offsets, Scale, cast<FixedVectorType>(ResultTy), MemoryTy, Builder);
559 Load = Builder.CreateIntrinsic(
562 {BasePtr, Offsets, Builder.getInt32(MemoryTy->getScalarSizeInBits()),
563 Builder.getInt32(Scale), Builder.getInt32(Unsigned), Mask});
565 Load = Builder.CreateIntrinsic(
568 {BasePtr, Offsets, Builder.getInt32(MemoryTy->getScalarSizeInBits()),
569 Builder.getInt32(Scale), Builder.getInt32(Unsigned)});
573 Builder.Insert(Load);
598 IRBuilder<> Builder(I->getContext());
599 Builder.SetInsertPoint(I);
600 Builder.SetCurrentDebugLocation(I->getDebugLoc());
602 Instruction *Store = tryCreateIncrementingGatScat(I, Ptr, Builder);
604 Store = tryCreateMaskedScatterOffset(I, Ptr, Builder);
606 Store = tryCreateMaskedScatterBase(I, Ptr, Builder);
617 IntrinsicInst *I, Value *Ptr, IRBuilder<> &Builder, int64_t Increment) {
630 return Builder.CreateIntrinsic(Intrinsic::arm_mve_vstr_scatter_base,
632 {Ptr, Builder.getInt32(Increment), Input});
634 return Builder.CreateIntrinsic(
637 {Ptr, Builder.getInt32(Increment), Input, Mask});
641 IntrinsicInst *I, Value *Ptr, IRBuilder<> &Builder, int64_t Increment) {
652 return Builder.CreateIntrinsic(Intrinsic::arm_mve_vstr_scatter_base_wb,
654 {Ptr, Builder.getInt32(Increment), Input});
656 return Builder.CreateIntrinsic(
659 {Ptr, Builder.getInt32(Increment), Input, Mask});
663 IntrinsicInst *I, Value *Ptr, IRBuilder<> &Builder) {
704 Ptr, Offsets, Scale, cast<FixedVectorType>(InputTy), MemoryTy, Builder);
709 Input = Builder.CreateZExt(Input, InputTy);
711 return Builder.CreateIntrinsic(
716 Builder.getInt32(MemoryTy->getScalarSizeInBits()),
717 Builder.getInt32(Scale), Mask});
719 return Builder.CreateIntrinsic(
723 Builder.getInt32(MemoryTy->getScalarSizeInBits()),
724 Builder.getInt32(Scale)});
728 IntrinsicInst *I, Value *Ptr, IRBuilder<> &Builder) {
746 Value *BasePtr = decomposeGEP(Offsets, Ty, GEP, Builder);
767 TypeScale, Builder))
783 Builder.CreateVectorSplat(Ty->getNumElements(),
784 Builder.getInt32(TypeScale)),
789 Builder.CreateVectorSplat(
791 Builder.CreatePtrToInt(
797 return tryCreateMaskedGatherBase(I, OffsetsIncoming, Builder, Immediate);
799 return tryCreateMaskedScatterBase(I, OffsetsIncoming, Builder, Immediate);
804 IRBuilder<> &Builder) {
834 Builder.SetInsertPoint(&Phi->getIncomingBlock(1 - IncrementIndex)->back());
841 Builder.CreateVectorSplat(NumElems, Builder.getInt32(TypeScale)),
847 Builder.CreateVectorSplat(
849 Builder.CreatePtrToInt(
857 Builder.CreateVectorSplat(NumElems, Builder.getInt32(Immediate)),
862 Builder.SetInsertPoint(I);
868 Value *Load = tryCreateMaskedGatherBaseWB(I, Phi, Builder, Immediate);
873 Builder.Insert(EndResult);
874 Builder.Insert(NewInduction);
878 tryCreateMaskedScatterBaseWB(I, Phi, Builder, Immediate);
912 IRBuilder<> &Builder) {
1081 IRBuilder<> Builder(BB->getContext());
1082 Builder.SetInsertPoint(Phi);
1083 Builder.SetCurrentDebugLocation(Offs->getDebugLoc());
1093 OffsSecondOperand, IncrementingBlock, Builder);
1114 unsigned ScaleY, IRBuilder<> &Builder) {
1118 auto FixSummands = [&Builder](FixedVectorType *&VT, Value *&NonVectorVal) {
1125 NonVectorVal = Builder.CreateVectorSplat(
1126 VT->getNumElements(), Builder.getIntN(TargetElemSize, N));
1131 Builder.CreateVectorSplat(VT->getNumElements(), NonVectorVal);
1173 Value *XScale = Builder.CreateVectorSplat(
1175 Builder.getIntN(XElType->getScalarSizeInBits(), ScaleX));
1176 Value *YScale = Builder.CreateVectorSplat(
1178 Builder.getIntN(YElType->getScalarSizeInBits(), ScaleY));
1179 Value *Add = Builder.CreateAdd(Builder.CreateMul(X, XScale),
1180 Builder.CreateMul(Y, YScale));
1190 IRBuilder<> &Builder) {
1200 Value *BaseBasePtr = foldGEP(BaseGEP, Offsets, Scale, Builder);
1205 DL->getTypeAllocSize(GEP->getSourceElementType()), Builder);
1221 IRBuilder<> Builder(GEP->getContext());
1222 Builder.SetInsertPoint(GEP);
1223 Builder.SetCurrentDebugLocation(GEP->getDebugLoc());
1226 Value *Base = foldGEP(GEP, Offsets, Scale, Builder);
1233 Type *BaseTy = Builder.getPtrTy();
1237 Builder.getInt8Ty(), Builder.CreateBitCast(Base, BaseTy), Offsets,
1242 Builder.CreateBitCast(NewAddress, GEP->getType()));