Lines Matching defs:IRB
134 IRBuilder<> IRB(EntryBB);
135 auto *MemSet = IRB.CreateMemSet(Dest, Val, Len, MSI->getDestAlign(),
137 IRB.CreateRetVoid();
144 IRBuilder<> IRB(EntryBB);
145 auto *BSwap = IRB.CreateIntrinsic(Intrinsic::bswap, Intrinsic->getType(),
147 IRB.CreateRet(BSwap);
276 IRBuilder<> IRB(II->getParent());
277 IRB.SetInsertPoint(II);
278 IRB.CreateIntrinsic(
301 IRBuilder<> IRB(RotateBB);
309 ConstantInt *BitWidthConstant = IRB.getInt({BitWidth, BitWidth});
312 ? IRB.CreateVectorSplat(VectorTy->getNumElements(), BitWidthConstant)
315 IRB.CreateURem(/*Rotate*/ FSHFunc->getArg(2), BitWidthForInsts);
320 FirstShift = IRB.CreateLShr(FSHFunc->getArg(1), RotateModVal);
324 FirstShift = IRB.CreateShl(FSHFunc->getArg(0), RotateModVal);
329 Value *SubRotateVal = IRB.CreateSub(BitWidthForInsts, RotateModVal);
333 SecShift = IRB.CreateShl(FSHFunc->getArg(0), SubRotateVal);
337 SecShift = IRB.CreateLShr(FSHFunc->getArg(1), SubRotateVal);
340 IRB.CreateRet(IRB.CreateOr(FirstShift, SecShift));
352 IRBuilder<> IRB(EntryBB);
357 Value *Mul = IRB.CreateNUWMul(UMulFunc->getArg(0), UMulFunc->getArg(1));
358 Value *Div = IRB.CreateUDiv(Mul, UMulFunc->getArg(0));
359 Value *Overflow = IRB.CreateICmpNE(UMulFunc->getArg(0), Div);
364 Value *Agg = IRB.CreateInsertValue(PoisonValue::get(StructTy), Mul, {0});
365 Value *Res = IRB.CreateInsertValue(Agg, Overflow, {1});
366 IRB.CreateRet(Res);