Home
last modified time | relevance | path

Searched refs:Sqrt (Results 1 – 25 of 28) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUCodeGenPrepare.cpp855 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 DAMDGPUPostLegalizerCombiner.cpp299 Register Sqrt = MI.getOperand(2).getReg(); in matchFDivSqrtToRsqF16() local
300 return MRI.hasOneNonDBGUse(Sqrt); in matchFDivSqrtToRsqF16()
H A DAMDGPULibCalls.cpp1229 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 DSimplifyLibCalls.cpp2234 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 DARMScheduleM4.td105 // 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 Darm_fp16.td22 // Reciprocal/Sqrt
H A Darm_neon.td390 // E.3.10 Reciprocal/Sqrt
816 // Reciprocal/Sqrt
1746 // Reciprocal/Sqrt
H A DBuiltinsNVPTX.def415 // Sqrt
H A DBuiltins.td3849 def Sqrt : FPMathTemplate, LibBuiltin<"math.h"> {
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64SchedThunderX.td43 def THXT8XUnitFPMDS : ProcResource<1> { let BufferSize = 0; } // FP Mul/Div/Sqrt
161 // FP Mul, Div, Sqrt
H A DAArch64SchedA53.td48 def A53UnitFPMDS : ProcResource<1> { let BufferSize = 0; } // FP Mult/Div/Sqrt
134 // FP Mul, Div, Sqrt
H A DAArch64SchedA55.td187 // FP Mul, Div, Sqrt. Div/Sqrt are not pipelined
H A DAArch64SchedA510.td200 // FP Mul, Div, Sqrt. Div/Sqrt are not pipelined
H A DAArch64SchedTSV110.td96 // FP Div, Sqrt
H A DAArch64SchedThunderX2T99.td1110 // FP Mul, Div, Sqrt
H A DAArch64SchedThunderX3T110.td1218 // FP Mul, Div, Sqrt
H A DAArch64SchedA64FX.td1270 // FP Div, Sqrt
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVSchedRocket.td43 def RocketUnitFPDivSqrt : ProcResource<1>; // FP Divide/Sqrt
H A DRISCVSchedSiFive7.td219 def SiFive7FDiv : ProcResource<1>; // FP Division/Sqrt
/freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/
H A DAggressiveInstCombine.cpp437 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 DDXIL.td302 def Sqrt : DXILOpMapping<24, unary, int_sqrt,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp756 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 DDAGCombiner.cpp17386 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 DSPIRVInstructionSelector.cpp489 return selectExtInst(ResVReg, ResType, I, CL::sqrt, GL::Sqrt); in spvSelect()
H A DSPIRVBuiltins.td405 defm : DemangledExtendedBuiltin<"Sqrt", GLSL_std_450, 31>;

12