Home
last modified time | relevance | path

Searched refs:FastMathFlags (Results 1 – 25 of 79) sorted by relevance

1234

/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DFMF.h22 class FastMathFlags {
28 FastMathFlags(unsigned F) : Flags(F) {} in FastMathFlags() function
48 FastMathFlags() = default;
50 static FastMathFlags getFast() { in getFast()
51 FastMathFlags FMF; in getFast()
98 void operator&=(const FastMathFlags &OtherFlags) {
101 void operator|=(const FastMathFlags &OtherFlags) {
104 bool operator!=(const FastMathFlags &OtherFlags) const {
112 static inline FastMathFlags intersectRewrite(FastMathFlags LHS, in intersectRewrite()
113 FastMathFlags RHS) { in intersectRewrite()
[all …]
H A DOperator.h217 (SubclassOptionalData & ~FastMathFlags::AllowReassoc) |
218 (B * FastMathFlags::AllowReassoc);
223 (SubclassOptionalData & ~FastMathFlags::NoNaNs) |
224 (B * FastMathFlags::NoNaNs);
229 (SubclassOptionalData & ~FastMathFlags::NoInfs) |
230 (B * FastMathFlags::NoInfs);
235 (SubclassOptionalData & ~FastMathFlags::NoSignedZeros) |
236 (B * FastMathFlags::NoSignedZeros);
241 (SubclassOptionalData & ~FastMathFlags::AllowReciprocal) |
242 (B * FastMathFlags::AllowReciprocal);
[all …]
H A DIRBuilderFolder.h48 Value *RHS, FastMathFlags FMF) const = 0;
51 FastMathFlags FMF) const = 0;
H A DNoFolder.h65 FastMathFlags FMF) const override { in FoldBinOpFMF()
70 FastMathFlags FMF) const override { in FoldUnOpFMF()
H A DInstruction.h35 class FastMathFlags; variable
641 LLVM_ABI void setFastMathFlags(FastMathFlags FMF);
646 LLVM_ABI void copyFastMathFlags(FastMathFlags FMF);
675 LLVM_ABI FastMathFlags getFastMathFlags() const LLVM_READONLY;
H A DConstantFolder.h88 FastMathFlags FMF) const override { in FoldBinOpFMF()
93 FastMathFlags FMF) const override { in FoldUnOpFMF()
H A DFPEnv.h86 inline bool canIgnoreSNaN(fp::ExceptionBehavior EB, FastMathFlags FMF) { in canIgnoreSNaN()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DInstructionSimplify.h90 LLVM_ABI Value *simplifyFNegInst(Value *Op, FastMathFlags FMF,
95 simplifyFAddInst(Value *LHS, Value *RHS, FastMathFlags FMF,
102 simplifyFSubInst(Value *LHS, Value *RHS, FastMathFlags FMF,
109 simplifyFMulInst(Value *LHS, Value *RHS, FastMathFlags FMF,
119 simplifyFMAFMul(Value *LHS, Value *RHS, FastMathFlags FMF,
126 simplifyFDivInst(Value *LHS, Value *RHS, FastMathFlags FMF,
133 simplifyFRemInst(Value *LHS, Value *RHS, FastMathFlags FMF,
165 FastMathFlags FMF, const SimplifyQuery &Q);
221 LLVM_ABI Value *simplifyUnOp(unsigned Opcode, Value *Op, FastMathFlags FMF,
231 FastMathFlags FMF, const SimplifyQuery &Q);
H A DIVDescriptors.h93 RecurKind K, FastMathFlags FMF, Instruction *ExactFP, in RecurrenceDescriptor()
145 InstDesc &Prev, FastMathFlags FuncFMF, ScalarEvolution *SE);
197 FastMathFlags FuncFMF, RecurrenceDescriptor &RedDes,
227 FastMathFlags getFastMathFlags() const { return FMF; } in getFastMathFlags()
360 FastMathFlags FMF;
H A DTargetTransformInfo.h128 FastMathFlags FMF;
142 FastMathFlags Flags = FastMathFlags(), const IntrinsicInst *I = nullptr,
150 ArrayRef<Type *> Tys, FastMathFlags Flags = FastMathFlags(),
158 FastMathFlags getFlags() const { return FMF; } in getFlags()
1607 static bool requiresOrderedReduction(std::optional<FastMathFlags> FMF) { in requiresOrderedReduction()
1636 unsigned Opcode, VectorType *Ty, std::optional<FastMathFlags> FMF,
1640 Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF = FastMathFlags(),
1658 std::optional<FastMathFlags> FMF,
H A DInstSimplifyFolder.h68 FastMathFlags FMF) const override { in FoldBinOpFMF()
73 FastMathFlags FMF) const override { in FoldUnOpFMF()
H A DValueTracking.h264 const Value *V, const APInt &DemandedElts, FastMathFlags FMF,
267 LLVM_ABI KnownFPClass computeKnownFPClass(const Value *V, FastMathFlags FMF,
906 FastMathFlags FMF = FastMathFlags(), Instruction::CastOps *CastOp = nullptr,
H A DTargetFolder.h99 FastMathFlags FMF) const override { in FoldBinOpFMF()
112 FastMathFlags FMF) const override { in FoldUnOpFMF()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUCodeGenPrepare.cpp290 bool canOptimizeWithRsq(const FPMathOperator *SqrtOp, FastMathFlags DivFMF,
291 FastMathFlags SqrtFMF) const;
294 FastMathFlags DivFMF, FastMathFlags SqrtFMF,
298 FastMathFlags FMF, const Instruction *CtxI) const;
303 FastMathFlags DivFMF, FastMathFlags SqrtFMF,
313 FastMathFlags FMF) const;
315 FastMathFlags FMF) const;
819 FastMathFlags FMF) const { in emitFrexpDiv()
846 FastMathFlags FMF) const { in emitSqrtIEEE2ULP()
895 FastMathFlags DivFMF, in canOptimizeWithRsq()
[all …]
H A DAMDGPUTargetTransformInfo.h262 std::optional<FastMathFlags> FMF,
269 getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF,
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DExpandReductions.cpp58 FastMathFlags FMF = in expandReductions()
59 isa<FPMathOperator>(II) ? II->getFastMathFlags() : FastMathFlags{}; in expandReductions()
/freebsd/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZTargetTransformInfo.h140 std::optional<FastMathFlags> FMF,
143 getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF,
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMTargetTransformInfo.h294 std::optional<FastMathFlags> FMF,
298 VectorType *ValTy, std::optional<FastMathFlags> FMF,
305 getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF,
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86TargetTransformInfo.h220 std::optional<FastMathFlags> FMF,
225 FastMathFlags FMF) const;
228 getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF,
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVTargetTransformInfo.h208 getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF,
213 std::optional<FastMathFlags> FMF,
218 VectorType *ValTy, std::optional<FastMathFlags> FMF,
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.h224 getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF,
440 std::optional<FastMathFlags> FMF,
445 VectorType *ValTy, std::optional<FastMathFlags> FMF,
/freebsd/contrib/llvm-project/llvm/include/llvm/SandboxIR/
H A DOperator.h83 FastMathFlags getFastMathFlags() const { in getFastMathFlags()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DIVDescriptors.cpp216 PHINode *Phi, RecurKind Kind, Loop *TheLoop, FastMathFlags FuncFMF, in AddReductionVar()
289 FastMathFlags FMF = FastMathFlags::getFast(); in AddReductionVar()
386 FastMathFlags CurFMF = ReduxDesc.getPatternInst()->getFastMathFlags(); in AddReductionVar()
892 FastMathFlags FuncFMF, ScalarEvolution *SE) { in isRecurrenceInstr()
995 FastMathFlags FMF; in isReductionPHI()
H A DInstructionSimplify.cpp63 static Value *simplifyFPUnOp(unsigned, Value *, const FastMathFlags &,
67 static Value *simplifyBinOp(unsigned, Value *, Value *, const FastMathFlags &,
4065 FastMathFlags FMF, const SimplifyQuery &Q, in simplifyFCmpInst()
4290 FastMathFlags FMF, const SimplifyQuery &Q) { in simplifyFCmpInst()
5584 static Value *simplifyFNegInst(Value *Op, FastMathFlags FMF, in simplifyFNegInst()
5597 Value *llvm::simplifyFNegInst(Value *Op, FastMathFlags FMF, in simplifyFNegInst()
5646 static Constant *simplifyFPOp(ArrayRef<Value *> Ops, FastMathFlags FMF, in simplifyFPOp()
5688 simplifyFAddInst(Value *Op0, Value *Op1, FastMathFlags FMF, in simplifyFAddInst()
5754 simplifyFSubInst(Value *Op0, Value *Op1, FastMathFlags FMF, in simplifyFSubInst()
5820 static Value *simplifyFMAFMul(Value *Op0, Value *Op1, FastMathFlags FMF, in simplifyFMAFMul()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h394 FastMathFlags FMF);
398 LLVM_ABI Value *getRecurrenceIdentity(RecurKind K, Type *Tp, FastMathFlags FMF);

1234