Lines Matching refs:Num

256                                  Value *Num, Value *Den) const;
257 unsigned getDivNumBits(BinaryOperator &I, Value *Num, Value *Den,
262 Value *Num, Value *Den,
266 Value *Num, Value *Den, unsigned NumBits,
271 Value *Num, Value *Den) const;
274 Value *Num, Value *Den) const;
293 Value *optimizeWithRsq(IRBuilder<> &Builder, Value *Num, Value *Den,
297 Value *optimizeWithRcp(IRBuilder<> &Builder, Value *Num, Value *Den,
299 Value *optimizeWithFDivFast(IRBuilder<> &Builder, Value *Num, Value *Den,
302 Value *visitFDivElement(IRBuilder<> &Builder, Value *Num, Value *Den,
907 IRBuilder<> &Builder, Value *Num, Value *Den, const FastMathFlags DivFMF, in optimizeWithRsq() argument
915 const ConstantFP *CLHS = dyn_cast<ConstantFP>(Num); in optimizeWithRsq()
949 AMDGPUCodeGenPrepareImpl::optimizeWithRcp(IRBuilder<> &Builder, Value *Num, in optimizeWithRcp() argument
957 if (const ConstantFP *CLHS = dyn_cast<ConstantFP>(Num)) { in optimizeWithRcp()
995 return Builder.CreateFMul(Num, Recip); in optimizeWithRcp()
999 return Builder.CreateFMul(Num, Recip); in optimizeWithRcp()
1013 IRBuilder<> &Builder, Value *Num, Value *Den, float ReqdAccuracy) const { in optimizeWithFDivFast() argument
1022 if (const ConstantFP *CNum = dyn_cast<ConstantFP>(Num)) { in optimizeWithFDivFast()
1034 return Builder.CreateIntrinsic(Intrinsic::amdgcn_fdiv_fast, {Num, Den}); in optimizeWithFDivFast()
1038 IRBuilder<> &Builder, Value *Num, Value *Den, FastMathFlags DivFMF, in visitFDivElement() argument
1043 optimizeWithRsq(Builder, Num, RsqOp, DivFMF, SqrtFMF, FDivInst); in visitFDivElement()
1048 Value *Rcp = optimizeWithRcp(Builder, Num, Den, DivFMF, FDivInst); in visitFDivElement()
1056 Value *FDivFast = optimizeWithFDivFast(Builder, Num, Den, ReqdDivAccuracy); in visitFDivElement()
1060 return emitFrexpDiv(Builder, Num, Den, DivFMF); in visitFDivElement()
1095 Value *Num = FDiv.getOperand(0); in visitFDiv() local
1132 extractValues(Builder, NumVals, Num); in visitFDiv()
1193 unsigned AMDGPUCodeGenPrepareImpl::getDivNumBits(BinaryOperator &I, Value *Num, in getDivNumBits() argument
1197 assert(Num->getType()->getScalarSizeInBits() == in getDivNumBits()
1199 unsigned SSBits = Num->getType()->getScalarSizeInBits(); in getDivNumBits()
1207 unsigned LHSSignBits = ComputeNumSignBits(Num, DL, AC, &I); in getDivNumBits()
1224 Known = computeKnownBits(Num, DL, AC, &I); in getDivNumBits()
1237 BinaryOperator &I, Value *Num, in expandDivRem24() argument
1240 unsigned DivBits = getDivNumBits(I, Num, Den, 24, IsSigned); in expandDivRem24()
1243 return expandDivRem24Impl(Builder, I, Num, Den, DivBits, IsDiv, IsSigned); in expandDivRem24()
1247 IRBuilder<> &Builder, BinaryOperator &I, Value *Num, Value *Den, in expandDivRem24Impl() argument
1250 Num = Builder.CreateTrunc(Num, I32Ty); in expandDivRem24Impl()
1259 JQ = Builder.CreateXor(Num, Den); in expandDivRem24Impl()
1269 Value *IA = Num; in expandDivRem24Impl()
1323 Res = Builder.CreateSub(Num, Rem); in expandDivRem24Impl()
1348 Value *Num, in divHasSpecialOptimization() argument
1514 BinaryOperator &I, Value *Num, in shrinkDivRem64() argument
1516 if (!ExpandDiv64InIR && divHasSpecialOptimization(I, Num, Den)) in shrinkDivRem64()
1524 unsigned NumDivBits = getDivNumBits(I, Num, Den, 32, IsSigned); in shrinkDivRem64()
1530 Narrowed = expandDivRem24Impl(Builder, I, Num, Den, NumDivBits, in shrinkDivRem64()
1533 Narrowed = expandDivRem32(Builder, I, Num, Den); in shrinkDivRem64()
1537 return IsSigned ? Builder.CreateSExt(Narrowed, Num->getType()) : in shrinkDivRem64()
1538 Builder.CreateZExt(Narrowed, Num->getType()); in shrinkDivRem64()
1660 Value *Num = I.getOperand(0); in visitBinaryOperator() local
1669 Value *NumEltN = Builder.CreateExtractElement(Num, N); in visitBinaryOperator()
1700 NewDiv = expandDivRem32(Builder, I, Num, Den); in visitBinaryOperator()
1702 NewDiv = shrinkDivRem64(Builder, I, Num, Den); in visitBinaryOperator()