Home
last modified time | relevance | path

Searched refs:OverflowResult (Results 1 – 14 of 14) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DConstantRange.h559 enum class OverflowResult { enum
571 OverflowResult unsignedAddMayOverflow(const ConstantRange &Other) const;
574 OverflowResult signedAddMayOverflow(const ConstantRange &Other) const;
577 OverflowResult unsignedSubMayOverflow(const ConstantRange &Other) const;
580 OverflowResult signedSubMayOverflow(const ConstantRange &Other) const;
583 OverflowResult unsignedMulMayOverflow(const ConstantRange &Other) const;
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DConstantRange.cpp1956 ConstantRange::OverflowResult ConstantRange::unsignedAddMayOverflow( in unsignedAddMayOverflow()
1959 return OverflowResult::MayOverflow; in unsignedAddMayOverflow()
1966 return OverflowResult::AlwaysOverflowsHigh; in unsignedAddMayOverflow()
1968 return OverflowResult::MayOverflow; in unsignedAddMayOverflow()
1969 return OverflowResult::NeverOverflows; in unsignedAddMayOverflow()
1972 ConstantRange::OverflowResult ConstantRange::signedAddMayOverflow( in signedAddMayOverflow()
1975 return OverflowResult::MayOverflow; in signedAddMayOverflow()
1987 return OverflowResult::AlwaysOverflowsHigh; in signedAddMayOverflow()
1990 return OverflowResult::AlwaysOverflowsLow; in signedAddMayOverflow()
1994 return OverflowResult::MayOverflow; in signedAddMayOverflow()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopFlatten.cpp644 static OverflowResult checkOverflow(FlattenInfo &FI, DominatorTree *DT, in checkOverflow()
651 return OverflowResult::NeverOverflows; in checkOverflow()
655 OverflowResult OR = computeOverflowForUnsignedMul( in checkOverflow()
659 if (OR != OverflowResult::MayOverflow) in checkOverflow()
691 return OverflowResult::NeverOverflows; in checkOverflow()
695 return OverflowResult::NeverOverflows; in checkOverflow()
698 return OverflowResult::MayOverflow; in checkOverflow()
943 OverflowResult OR = checkOverflow(FI, DT, AC); in FlattenLoopPair()
944 if (OR == OverflowResult::AlwaysOverflowsHigh || in FlattenLoopPair()
945 OR == OverflowResult::AlwaysOverflowsLow) { in FlattenLoopPair()
[all …]
H A DNaryReassociate.cpp377 computeOverflowForSignedAdd(AO, SQ) != OverflowResult::NeverOverflows) in tryReassociateGEPAtIndex()
H A DLICM.cpp2563 llvm::OverflowResult::NeverOverflows; in hoistAdd()
2617 llvm::OverflowResult::NeverOverflows) in hoistSub()
2622 llvm::OverflowResult::NeverOverflows) in hoistSub()
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/InstCombine/
H A DInstCombiner.h462 OverflowResult computeOverflowForUnsignedMul(const Value *LHS,
470 OverflowResult computeOverflowForSignedMul(const Value *LHS, const Value *RHS, in computeOverflowForSignedMul()
476 OverflowResult
484 OverflowResult
492 OverflowResult computeOverflowForUnsignedSub(const Value *LHS, in computeOverflowForUnsignedSub()
499 OverflowResult computeOverflowForSignedSub(const Value *LHS, const Value *RHS, in computeOverflowForSignedSub()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DValueTracking.h897 enum class OverflowResult { enum
908 OverflowResult computeOverflowForUnsignedMul(const Value *LHS, const Value *RHS,
911 OverflowResult computeOverflowForSignedMul(const Value *LHS, const Value *RHS,
913 OverflowResult
917 OverflowResult computeOverflowForSignedAdd(const WithCache<const Value *> &LHS,
921 OverflowResult computeOverflowForSignedAdd(const AddOperator *Add,
923 OverflowResult computeOverflowForUnsignedSub(const Value *LHS, const Value *RHS,
925 OverflowResult computeOverflowForSignedSub(const Value *LHS, const Value *RHS,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineInternal.h277 Constant *&OverflowResult);
316 OverflowResult::NeverOverflows; in willNotOverflowSignedAdd()
323 OverflowResult::NeverOverflows; in willNotOverflowUnsignedAdd()
335 OverflowResult::NeverOverflows; in willNotOverflowSignedSub()
341 OverflowResult::NeverOverflows; in willNotOverflowUnsignedSub()
353 OverflowResult::NeverOverflows; in willNotOverflowSignedMul()
360 OverflowResult::NeverOverflows;
490 OverflowResult computeOverflow(
H A DInstCombineCalls.cpp826 Constant *OverflowResult = nullptr; in foldIntrinsicWithOverflowCommon() local
828 WO->getRHS(), *WO, OperationResult, OverflowResult)) in foldIntrinsicWithOverflowCommon()
829 return createOverflowTuple(WO, OperationResult, OverflowResult); in foldIntrinsicWithOverflowCommon()
2226 OverflowResult OR = computeOverflow(SI->getBinaryOp(), SI->isSigned(), in visitCallInst()
2229 case OverflowResult::MayOverflow: in visitCallInst()
2231 case OverflowResult::NeverOverflows: in visitCallInst()
2236 case OverflowResult::AlwaysOverflowsLow: { in visitCallInst()
2241 case OverflowResult::AlwaysOverflowsHigh: { in visitCallInst()
H A DInstCombineCompares.cpp3547 OverflowResult OR = computeOverflow( in foldICmpBinOpEqualityWithConstant()
3550 if (OR == OverflowResult::NeverOverflows) { in foldICmpBinOpEqualityWithConstant()
6057 OverflowResult
6107 case OverflowResult::MayOverflow: in OptimizeOverflowCheck()
6109 case OverflowResult::AlwaysOverflowsLow: in OptimizeOverflowCheck()
6110 case OverflowResult::AlwaysOverflowsHigh: in OptimizeOverflowCheck()
6115 case OverflowResult::NeverOverflows: in OptimizeOverflowCheck()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DValueTracking.cpp6942 static OverflowResult mapOverflowResult(ConstantRange::OverflowResult OR) { in mapOverflowResult()
6944 case ConstantRange::OverflowResult::MayOverflow: in mapOverflowResult()
6945 return OverflowResult::MayOverflow; in mapOverflowResult()
6946 case ConstantRange::OverflowResult::AlwaysOverflowsLow: in mapOverflowResult()
6947 return OverflowResult::AlwaysOverflowsLow; in mapOverflowResult()
6948 case ConstantRange::OverflowResult::AlwaysOverflowsHigh: in mapOverflowResult()
6949 return OverflowResult::AlwaysOverflowsHigh; in mapOverflowResult()
6950 case ConstantRange::OverflowResult::NeverOverflows: in mapOverflowResult()
6951 return OverflowResult::NeverOverflows; in mapOverflowResult()
6969 OverflowResult llvm::computeOverflowForUnsignedMul(const Value *LHS, in computeOverflowForUnsignedMul()
[all …]
H A DStackSafetyAnalysis.cpp82 ConstantRange::OverflowResult::NeverOverflows) in addOverflowNever()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DCombinerHelper.cpp7345 case ConstantRange::OverflowResult::MayOverflow: in matchAddOverflow()
7347 case ConstantRange::OverflowResult::NeverOverflows: { in matchAddOverflow()
7354 case ConstantRange::OverflowResult::AlwaysOverflowsLow: in matchAddOverflow()
7355 case ConstantRange::OverflowResult::AlwaysOverflowsHigh: { in matchAddOverflow()
7384 case ConstantRange::OverflowResult::MayOverflow: in matchAddOverflow()
7386 case ConstantRange::OverflowResult::NeverOverflows: { in matchAddOverflow()
7393 case ConstantRange::OverflowResult::AlwaysOverflowsLow: in matchAddOverflow()
7394 case ConstantRange::OverflowResult::AlwaysOverflowsHigh: { in matchAddOverflow()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAG.cpp4221 static SelectionDAG::OverflowKind mapOverflowResult(ConstantRange::OverflowResult OR) { in mapOverflowResult()
4223 case ConstantRange::OverflowResult::MayOverflow: in mapOverflowResult()
4225 case ConstantRange::OverflowResult::AlwaysOverflowsLow: in mapOverflowResult()
4226 case ConstantRange::OverflowResult::AlwaysOverflowsHigh: in mapOverflowResult()
4228 case ConstantRange::OverflowResult::NeverOverflows: in mapOverflowResult()