/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUCodeGenPrepare.cpp | 855 Value *Sqrt = Builder.CreateCall(getSqrtF32(), Scaled); in emitSqrtIEEE2ULP() local 859 return Builder.CreateCall(getLdexpF32(), {Sqrt, OutputScaleFactor}); in emitSqrtIEEE2ULP() 2205 bool AMDGPUCodeGenPrepareImpl::visitSqrt(IntrinsicInst &Sqrt) { in visitSqrt() argument 2206 Type *Ty = Sqrt.getType()->getScalarType(); in visitSqrt() 2210 const FPMathOperator *FPOp = cast<const FPMathOperator>(&Sqrt); in visitSqrt() 2228 dyn_cast_or_null<FPMathOperator>(Sqrt.getUniqueUndroppableUser()); in visitSqrt() 2236 Value *SrcVal = Sqrt.getOperand(0); in visitSqrt() 2237 bool CanTreatAsDAZ = canIgnoreDenormalInput(SrcVal, &Sqrt); in visitSqrt() 2244 IRBuilder<> Builder(&Sqrt); in visitSqrt() 2256 Value *NewSqrt = insertValues(Builder, Sqrt.getType(), ResultVals); in visitSqrt() [all …]
|
H A D | AMDGPUPostLegalizerCombiner.cpp | 299 Register Sqrt = MI.getOperand(2).getReg(); in matchFDivSqrtToRsqF16() local 300 return MRI.hasOneNonDBGUse(Sqrt); in matchFDivSqrtToRsqF16()
|
H A D | AMDGPULibCalls.cpp | 1229 CallInst *Sqrt = B.CreateUnaryIntrinsic(Intrinsic::sqrt, opr0, CI); in fold_rootn() local 1231 B.CreateFDiv(ConstantFP::get(opr0->getType(), 1.0), Sqrt)); in fold_rootn() 1232 Sqrt->setFastMathFlags(FMF); in fold_rootn()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | SimplifyLibCalls.cpp | 2234 Value *Sqrt, *Base = Pow->getArgOperand(0), *Expo = Pow->getArgOperand(1); in replacePowWithSqrt() local 2257 Sqrt = getSqrtCall(Base, AttributeList(), Pow->doesNotAccessMemory(), Mod, B, in replacePowWithSqrt() 2259 if (!Sqrt) in replacePowWithSqrt() 2264 Sqrt = B.CreateUnaryIntrinsic(Intrinsic::fabs, Sqrt, nullptr, "abs"); in replacePowWithSqrt() 2266 Sqrt = copyFlags(*Pow, Sqrt); in replacePowWithSqrt() 2274 Sqrt = B.CreateSelect(FCmp, PosInf, Sqrt); in replacePowWithSqrt() 2279 Sqrt = B.CreateFDiv(ConstantFP::get(Ty, 1.0), Sqrt, "reciprocal"); in replacePowWithSqrt() 2281 return Sqrt; in replacePowWithSqrt() 2331 if (Value *Sqrt = replacePowWithSqrt(Pow, B)) in optimizePow() local 2332 return Sqrt; in optimizePow() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
H A D | ARMScheduleM4.td | 105 // Most FP instructions are single-cycle latency, except MAC's, Div's and Sqrt's.
|
/freebsd/contrib/llvm-project/clang/include/clang/Basic/ |
H A D | arm_fp16.td | 22 // Reciprocal/Sqrt
|
H A D | arm_neon.td | 390 // E.3.10 Reciprocal/Sqrt 816 // Reciprocal/Sqrt 1746 // Reciprocal/Sqrt
|
H A D | BuiltinsNVPTX.def | 415 // Sqrt
|
H A D | Builtins.td | 3849 def Sqrt : FPMathTemplate, LibBuiltin<"math.h"> {
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64SchedThunderX.td | 43 def THXT8XUnitFPMDS : ProcResource<1> { let BufferSize = 0; } // FP Mul/Div/Sqrt 161 // FP Mul, Div, Sqrt
|
H A D | AArch64SchedA53.td | 48 def A53UnitFPMDS : ProcResource<1> { let BufferSize = 0; } // FP Mult/Div/Sqrt 134 // FP Mul, Div, Sqrt
|
H A D | AArch64SchedA55.td | 187 // FP Mul, Div, Sqrt. Div/Sqrt are not pipelined
|
H A D | AArch64SchedA510.td | 200 // FP Mul, Div, Sqrt. Div/Sqrt are not pipelined
|
H A D | AArch64SchedTSV110.td | 96 // FP Div, Sqrt
|
H A D | AArch64SchedThunderX2T99.td | 1110 // FP Mul, Div, Sqrt
|
H A D | AArch64SchedThunderX3T110.td | 1218 // FP Mul, Div, Sqrt
|
H A D | AArch64SchedA64FX.td | 1270 // FP Div, Sqrt
|
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
H A D | RISCVSchedRocket.td | 43 def RocketUnitFPDivSqrt : ProcResource<1>; // FP Divide/Sqrt
|
H A D | RISCVSchedSiFive7.td | 219 def SiFive7FDiv : ProcResource<1>; // FP Division/Sqrt
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
H A D | AggressiveInstCombine.cpp | 437 Function *Sqrt = Intrinsic::getDeclaration(M, Intrinsic::sqrt, Ty); in foldSqrt() local 438 Value *NewSqrt = Builder.CreateCall(Sqrt, Arg, "sqrt"); in foldSqrt()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/DirectX/ |
H A D | DXIL.td | 302 def Sqrt : DXILOpMapping<24, unary, int_sqrt,
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineMulDivRem.cpp | 756 Value *Sqrt = Builder.CreateUnaryIntrinsic(Intrinsic::sqrt, XY, &I); in foldFMulReassoc() local 757 return replaceInstUsesWith(I, Sqrt); in foldFMulReassoc()
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
H A D | DAGCombiner.cpp | 17386 SDValue Sqrt, Y; in visitFDIV() local 17388 Sqrt = N1.getOperand(0); in visitFDIV() 17391 Sqrt = N1.getOperand(1); in visitFDIV() 17394 if (Sqrt.getNode()) { in visitFDIV() 17398 N1->getFlags().hasAllowReassociation() && Sqrt.hasOneUse()) { in visitFDIV() 17402 else if (Y == Sqrt.getOperand(0)) in visitFDIV() 17409 DAG.getNode(ISD::FMUL, DL, VT, AA, Sqrt.getOperand(0)); in visitFDIV() 17420 if (SDValue Rsqrt = buildRsqrtEstimate(Sqrt.getOperand(0), Flags)) { in visitFDIV() 17679 SDValue Sqrt = DAG.getNode(ISD::FSQRT, DL, VT, N->getOperand(0)); in visitFPOW() local 17680 SDValue SqrtSqrt = DAG.getNode(ISD::FSQRT, DL, VT, Sqrt); in visitFPOW() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/ |
H A D | SPIRVInstructionSelector.cpp | 489 return selectExtInst(ResVReg, ResType, I, CL::sqrt, GL::Sqrt); in spvSelect()
|
H A D | SPIRVBuiltins.td | 405 defm : DemangledExtendedBuiltin<"Sqrt", GLSL_std_450, 31>;
|