Home
last modified time | relevance | path

Searched refs:IsNUW (Results 1 – 8 of 8) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DInstructionSimplify.h61 Value *simplifyAddInst(Value *LHS, Value *RHS, bool IsNSW, bool IsNUW,
65 Value *simplifySubInst(Value *LHS, Value *RHS, bool IsNSW, bool IsNUW,
69 Value *simplifyMulInst(Value *LHS, Value *RHS, bool IsNSW, bool IsNUW,
135 Value *simplifyShlInst(Value *Op0, Value *Op1, bool IsNSW, bool IsNUW,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DSimplifyIndVar.cpp1410 bool IsNUW = false; member
1417 IsNUW = OBO->hasNoUnsignedWrap();
1422 bool IsNSW = false, bool IsNUW = false) in BinaryOp()
1423 : Opcode(Opcode), Operands({LHS, RHS}), IsNSW(IsNSW), IsNUW(IsNUW) {} in BinaryOp()
1454 bool IsNUW = Op->hasNoUnsignedWrap(); in matchBinaryOp() local
1456 (IsNUW || SA->getValue().ult(BitWidth - 1)); in matchBinaryOp()
1461 return BinaryOp(Instruction::Mul, Op->getOperand(0), X, IsNSW, IsNUW); in matchBinaryOp()
1494 !(ExtKind == ExtendKind::Zero && Op->IsNUW)) { in getExtendedOperandRecurrence()
1504 } else if (Op->IsNUW) { in getExtendedOperandRecurrence()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DInstructionSimplify.cpp635 static Value *simplifyAddInst(Value *Op0, Value *Op1, bool IsNSW, bool IsNUW, in simplifyAddInst() argument
672 if ((IsNSW || IsNUW) && match(Op1, m_SignMask()) && in simplifyAddInst()
677 if (IsNUW && match(Op1, m_AllOnes())) in simplifyAddInst()
702 Value *llvm::simplifyAddInst(Value *Op0, Value *Op1, bool IsNSW, bool IsNUW, in simplifyAddInst() argument
704 return ::simplifyAddInst(Op0, Op1, IsNSW, IsNUW, Query, RecursionLimit); in simplifyAddInst()
787 static Value *simplifySubInst(Value *Op0, Value *Op1, bool IsNSW, bool IsNUW, in simplifySubInst() argument
813 if (IsNUW) in simplifySubInst()
923 Value *llvm::simplifySubInst(Value *Op0, Value *Op1, bool IsNSW, bool IsNUW, in simplifySubInst() argument
925 return ::simplifySubInst(Op0, Op1, IsNSW, IsNUW, Q, RecursionLimit); in simplifySubInst()
930 static Value *simplifyMulInst(Value *Op0, Value *Op1, bool IsNSW, bool IsNUW, in simplifyMulInst() argument
[all …]
H A DScalarEvolution.cpp5246 bool IsNUW = false; member
5257 IsNUW = OBO->hasNoUnsignedWrap(); in BinaryOp()
5262 bool IsNUW = false) in BinaryOp()
5263 : Opcode(Opcode), LHS(LHS), RHS(RHS), IsNSW(IsNSW), IsNUW(IsNUW) {} in BinaryOp()
5773 if (BO->IsNUW) in createSimpleAffineAddRec()
5879 if (BO->IsNUW) in createAddRecFromPHI()
7526 if (BO->Op && (BO->IsNSW || BO->IsNUW)) { in getOperandsToCreate()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstructionCombining.cpp455 bool IsNUW = hasNoUnsignedWrap(I) && hasNoUnsignedWrap(*Op0); in SimplifyAssociativeOrCommutative() local
465 if (IsNUW) in SimplifyAssociativeOrCommutative()
554 bool IsNUW = hasNoUnsignedWrap(I) && in SimplifyAssociativeOrCommutative() local
557 BinaryOperator *NewBO = (IsNUW && Opcode == Instruction::Add) ? in SimplifyAssociativeOrCommutative()
574 if (IsNUW) in SimplifyAssociativeOrCommutative()
H A DInstCombineAddSub.cpp2004 Type *Ty, bool IsNUW) { in OptimizePointerDifference() argument
2046 if (IsNUW && !GEP2 && !Swapped && GEP1IsInBounds && in OptimizePointerDifference()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DIRBuilder.h2013 bool IsNUW = false, bool IsNSW = false) {
2019 if (IsNUW)
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DTargetLowering.cpp1877 if (bool IsNUW = (Known.countMinLeadingZeros() >= HalfWidth)) { in SimplifyDemandedBits() local
1881 Flags.setNoUnsignedWrap(IsNUW); in SimplifyDemandedBits()