| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUCodeGenPrepare.cpp | 859 Value *Sqrt = Builder.CreateCall(getSqrtF32(), Scaled); in emitSqrtIEEE2ULP() local 863 return Builder.CreateCall(getLdexpF32(), {Sqrt, OutputScaleFactor}); in emitSqrtIEEE2ULP() 2313 bool AMDGPUCodeGenPrepareImpl::visitSqrt(IntrinsicInst &Sqrt) { in visitSqrt() argument 2314 Type *Ty = Sqrt.getType()->getScalarType(); in visitSqrt() 2318 const FPMathOperator *FPOp = cast<const FPMathOperator>(&Sqrt); in visitSqrt() 2336 dyn_cast_or_null<FPMathOperator>(Sqrt.getUniqueUndroppableUser()); in visitSqrt() 2344 Value *SrcVal = Sqrt.getOperand(0); in visitSqrt() 2345 bool CanTreatAsDAZ = canIgnoreDenormalInput(SrcVal, &Sqrt); in visitSqrt() 2352 IRBuilder<> Builder(&Sqrt); in visitSqrt() 2364 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 | 1227 CallInst *Sqrt = B.CreateUnaryIntrinsic(Intrinsic::sqrt, opr0, CI); in fold_rootn() local 1229 B.CreateFDiv(ConstantFP::get(opr0->getType(), 1.0), Sqrt)); in fold_rootn() 1230 Sqrt->setFastMathFlags(FMF); in fold_rootn()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyLibCalls.cpp | 2245 Value *Sqrt, *Base = Pow->getArgOperand(0), *Expo = Pow->getArgOperand(1); in replacePowWithSqrt() local 2268 Sqrt = getSqrtCall(Base, AttributeList(), Pow->doesNotAccessMemory(), Mod, B, in replacePowWithSqrt() 2270 if (!Sqrt) in replacePowWithSqrt() 2275 Sqrt = B.CreateUnaryIntrinsic(Intrinsic::fabs, Sqrt, nullptr, "abs"); in replacePowWithSqrt() 2277 Sqrt = copyFlags(*Pow, Sqrt); in replacePowWithSqrt() 2285 Sqrt = B.CreateSelect(FCmp, PosInf, Sqrt); in replacePowWithSqrt() 2290 Sqrt = B.CreateFDiv(ConstantFP::get(Ty, 1.0), Sqrt, "reciprocal"); in replacePowWithSqrt() 2292 return Sqrt; in replacePowWithSqrt() 2342 if (Value *Sqrt = replacePowWithSqrt(Pow, B)) in optimizePow() local 2343 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/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 | AArch64SchedA320.td | 196 // 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/clang/include/clang/Basic/ |
| H A D | arm_fp16.td | 22 // Reciprocal/Sqrt
|
| H A D | arm_neon.td | 386 // E.3.10 Reciprocal/Sqrt 873 // Reciprocal/Sqrt 1755 // Reciprocal/Sqrt
|
| H A D | BuiltinsNVPTX.td | 418 // 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 | 221 def FDiv : ProcResource<1>; // FP Division/Sqrt
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineMulDivRem.cpp | 853 Value *Sqrt = Builder.CreateUnaryIntrinsic(Intrinsic::sqrt, XY, &I); in foldFMulReassoc() local 854 return replaceInstUsesWith(I, Sqrt); in foldFMulReassoc()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/DirectX/ |
| H A D | DXIL.td | 584 def Sqrt : DXILOp<24, unary> {
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | DAGCombiner.cpp | 18386 SDValue Sqrt, Y; in visitFDIV() local 18388 Sqrt = N1.getOperand(0); in visitFDIV() 18391 Sqrt = N1.getOperand(1); in visitFDIV() 18394 if (Sqrt.getNode()) { in visitFDIV() 18398 N1->getFlags().hasAllowReassociation() && Sqrt.hasOneUse()) { in visitFDIV() 18402 else if (Y == Sqrt.getOperand(0)) in visitFDIV() 18409 DAG.getNode(ISD::FMUL, DL, VT, AA, Sqrt.getOperand(0)); in visitFDIV() 18420 if (SDValue Rsqrt = buildRsqrtEstimate(Sqrt.getOperand(0), Flags)) { in visitFDIV() 18643 SDValue Sqrt = DAG.getNode(ISD::FSQRT, DL, VT, N->getOperand(0)); in visitFPOW() local 18644 SDValue SqrtSqrt = DAG.getNode(ISD::FSQRT, DL, VT, Sqrt); in visitFPOW() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/ |
| H A D | SPIRVBuiltins.td | 415 defm : DemangledExtendedBuiltin<"Sqrt", GLSL_std_450, 31>;
|
| H A D | SPIRVInstructionSelector.cpp | 755 return selectExtInst(ResVReg, ResType, I, CL::sqrt, GL::Sqrt); in spvSelect()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | IntrinsicsNVVM.td | 1025 // Sqrt
|