HomeSort by: relevance | last modified time | path
    Searched refs:Fabs (Results 1 - 10 of 10) sorted by relevancy

  /src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
InstCombineSelect.cpp 2845 // Canonicalize select with fcmp to fabs(). -0.0 makes this tricky. We need
2851 // (X <= +/-0.0) ? (0.0 - X) : X --> fabs(X)
2857 Value *Fabs = Builder.CreateUnaryIntrinsic(Intrinsic::fabs, FalseVal, FSub);
2858 return replaceInstUsesWith(SI, Fabs);
2860 // (X > +/-0.0) ? X : (0.0 - X) --> fabs(X)
2865 Value *Fabs = Builder.CreateUnaryIntrinsic(Intrinsic::fabs, TrueVal, FSub);
2866 return replaceInstUsesWith(SI, Fabs);
2869 // (X < +/-0.0) ? -X : X --> fabs(X
    [all...]
InstCombineMulDivRem.cpp 408 // fabs(X) * fabs(X) -> X * X
409 // fabs(X) / fabs(X) -> X / X
413 // fabs(X) * fabs(Y) --> fabs(X * Y)
414 // fabs(X) / fabs(Y) --> fabs(X / Y
    [all...]
InstCombineCalls.cpp 1402 // fma fabs(x), fabs(x), z -> fma x, x, z
1433 // If we know that the sign argument is positive, reduce to FABS:
1434 // copysign Mag, +Sign --> fabs Mag
1435 Value *Fabs = Builder.CreateUnaryIntrinsic(Intrinsic::fabs, Mag, II);
1436 return replaceInstUsesWith(*II, Fabs);
1442 // copysign Mag, -Sign --> fneg (fabs Mag)
1443 Value *Fabs = Builder.CreateUnaryIntrinsic(Intrinsic::fabs, Mag, II)
    [all...]
InstCombineCompares.cpp 6094 /// Optimize fabs(X) compared with zero.
6109 // fabs(X) >= 0.0 --> true
6110 // fabs(X) < 0.0 --> false
6114 // fabs(X) > 0.0 --> X != 0.0
6118 // fabs(X) u> 0.0 --> X u!= 0.0
6122 // fabs(X) <= 0.0 --> X == 0.0
6126 // fabs(X) u<= 0.0 --> X u== 0.0
6130 // fabs(X) >= 0.0 --> !isnan(X)
6135 // fabs(X) u< 0.0 --> isnan(X)
6145 // Look through the fabs() because it doesn't change anything but the sign
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
AMDGPUInstructionSelector.cpp 2192 MachineInstr *Fabs = getOpcodeDef(TargetOpcode::G_FABS, Src, *MRI);
2193 if (Fabs)
2194 Src = Fabs->getOperand(1).getReg();
2215 unsigned Opc = Fabs ? AMDGPU::S_OR_B32 : AMDGPU::S_XOR_B32;
AMDGPULegalizerInfo.cpp 1904 auto Fabs = B.buildFAbs(Ty, Src);
1906 auto Cond = B.buildFCmp(CmpInst::FCMP_OGT, LLT::scalar(1), Fabs, C2);
AMDGPUISelLowering.cpp 297 setOperationAction(ISD::FABS, MVT::f32, Legal);
461 setOperationAction(ISD::FABS, VT, Expand);
562 setTargetDAGCombine(ISD::FABS);
842 // Packed operations do not have a fabs modifier.
1731 // fr = fabs(fr);
1732 fr = DAG.getNode(ISD::FABS, DL, FltVT, fr);
1734 // fb = fabs(fb);
1735 fb = DAG.getNode(ISD::FABS, DL, FltVT, fb);
2216 SDValue Fabs = DAG.getNode(ISD::FABS, SL, MVT::f64, Src)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
SimplifyLibCalls.cpp 1641 // Handle signed zero base by expanding to fabs(sqrt(x)).
1643 Function *FAbsFn = Intrinsic::getDeclaration(Mod, Intrinsic::fabs, Ty);
2016 // so we can do this fold: sqrt(x * x) -> fabs(x);
2017 // or this fold: sqrt((x * x) * y) -> fabs(x) * sqrt(y).
2050 // replace it with the fabs of that factor.
2053 Function *Fabs = Intrinsic::getDeclaration(M, Intrinsic::fabs, ArgType);
2054 Value *FabsCall = B.CreateCall(Fabs, RepeatOp, "fabs");
2946 return replaceUnaryCall(CI, Builder, Intrinsic::fabs);
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
TargetLowering.cpp 5969 // Test = fabs(X) < SmallestNormal
5973 SDValue Fabs = DAG.getNode(ISD::FABS, DL, VT, Op);
5974 return DAG.getSetCC(DL, CCVT, Fabs, NormC, ISD::SETLT);
  /src/external/apache2/llvm/dist/clang/lib/CodeGen/
CGBuiltin.cpp 577 /// EmitFAbs - Emit a call to @llvm.fabs().
579 Function *F = CGF.CGM.getIntrinsic(Intrinsic::fabs, V->getType());
2122 MUTATE_LDBL(fabs)
2290 return RValue::get(emitUnaryBuiltin(*this, E, Intrinsic::fabs));
3078 // isinf(x) --> fabs(x) == infinity
3079 // isfinite(x) --> fabs(x) != infinity
3087 Value *Fabs = EmitFAbs(*this, V);
3092 Value *FCmp = Builder.CreateFCmp(Pred, Fabs, Infinity, "cmpinf");
3117 // isinf_sign(x) -> fabs(x) == infinity ? (signbit(x) ? -1 : 1) : 0
3197 // if (fabs(V) == infinity) return FP_INFINIT
    [all...]

Completed in 149 milliseconds