Lines Matching refs:IRB
76 IRBuilder<> IRB(BasicBlock::Create(C, "entry", &F)); in createInitOrFiniCalls() local
79 Type *PtrTy = IRB.getPtrTy(AMDGPUAS::GLOBAL_ADDRESS); in createInitOrFiniCalls()
106 auto *CallBackTy = FunctionType::get(IRB.getVoidTy(), {}); in createInitOrFiniCalls()
114 auto *EndPtr = IRB.CreatePtrToInt(End, Int64Ty); in createInitOrFiniCalls()
115 auto *BeginPtr = IRB.CreatePtrToInt(Begin, Int64Ty); in createInitOrFiniCalls()
116 auto *ByteSize = IRB.CreateSub(EndPtr, BeginPtr); in createInitOrFiniCalls()
117 auto *Size = IRB.CreateAShr(ByteSize, ConstantInt::get(Int64Ty, 3)); in createInitOrFiniCalls()
118 auto *Offset = IRB.CreateSub(Size, ConstantInt::get(Int64Ty, 1)); in createInitOrFiniCalls()
119 Start = IRB.CreateInBoundsGEP( in createInitOrFiniCalls()
120 ArrayType::get(IRB.getPtrTy(), 0), Begin, in createInitOrFiniCalls()
125 IRB.CreateCondBr( in createInitOrFiniCalls()
126 IRB.CreateCmp(IsCtor ? ICmpInst::ICMP_NE : ICmpInst::ICMP_UGE, Start, in createInitOrFiniCalls()
129 IRB.SetInsertPoint(LoopBB); in createInitOrFiniCalls()
130 auto *CallBackPHI = IRB.CreatePHI(PtrTy, 2, "ptr"); in createInitOrFiniCalls()
131 auto *CallBack = IRB.CreateLoad(IRB.getPtrTy(F.getAddressSpace()), in createInitOrFiniCalls()
133 IRB.CreateCall(CallBackTy, CallBack); in createInitOrFiniCalls()
135 IRB.CreateConstGEP1_64(PtrTy, CallBackPHI, IsCtor ? 1 : -1, "next"); in createInitOrFiniCalls()
136 auto *EndCmp = IRB.CreateCmp(IsCtor ? ICmpInst::ICMP_EQ : ICmpInst::ICMP_ULT, in createInitOrFiniCalls()
140 IRB.CreateCondBr(EndCmp, ExitBB, LoopBB); in createInitOrFiniCalls()
141 IRB.SetInsertPoint(ExitBB); in createInitOrFiniCalls()
142 IRB.CreateRetVoid(); in createInitOrFiniCalls()