Home
last modified time | relevance | path

Searched refs:hasNoUnsignedWrap (Results 1 – 25 of 58) sorted by relevance

123

/openbsd/src/gnu/llvm/llvm/lib/Transforms/InstCombine/
DInstCombineMulDivRem.cpp81 if (I->getOpcode() == Instruction::Shl && !I->hasNoUnsignedWrap()) { in simplifyValueKnownNonZero()
107 bool HasAnyNoWrap = I.hasNoSignedWrap() || I.hasNoUnsignedWrap(); in foldMulSelectToNegate()
115 bool HasAnyNoWrap = I.hasNoSignedWrap() || I.hasNoUnsignedWrap(); in foldMulSelectToNegate()
152 const bool HasNUW = Mul.hasNoUnsignedWrap(); in foldMulShl1()
191 simplifyMulInst(Op0, Op1, I.hasNoSignedWrap(), I.hasNoUnsignedWrap(), in visitMul()
210 const bool HasNUW = I.hasNoUnsignedWrap(); in visitMul()
230 if (HasNUW && Mul->hasNoUnsignedWrap()) in visitMul()
302 (BOp0->getOpcode() == Instruction::Or || BOp0->hasNoUnsignedWrap()); in visitMul()
890 bool HasNUW = Mul->hasNoUnsignedWrap() && Shl->hasNoUnsignedWrap(); in foldIDivShl()
915 ((Shl0->hasNoUnsignedWrap() && Shl1->hasNoUnsignedWrap()) || in foldIDivShl()
[all …]
DInstCombineShifts.cpp149 NewShift->setHasNoUnsignedWrap(Sh0->hasNoUnsignedWrap() && in reassociateShiftAmtsOfTwoSameDirectionShifts()
150 Sh1->hasNoUnsignedWrap()); in reassociateShiftAmtsOfTwoSameDirectionShifts()
431 return (I.hasNoSignedWrap() || I.hasNoUnsignedWrap()) && in commonShiftTransforms()
446 NewShiftOp->setHasNoUnsignedWrap(I.hasNoUnsignedWrap()); in commonShiftTransforms()
914 I.hasNoSignedWrap(), I.hasNoUnsignedWrap(), Q)) in visitShl()
958 NewShl->setHasNoUnsignedWrap(I.hasNoUnsignedWrap()); in visitShl()
979 NewShl->setHasNoUnsignedWrap(I.hasNoUnsignedWrap()); in visitShl()
1092 if (!I.hasNoUnsignedWrap() && in visitShl()
1140 if (!I.hasNoUnsignedWrap() && !ConstantOne->containsUndefElement()) { in visitShl()
1193 if (cast<BinaryOperator>(Op0)->hasNoUnsignedWrap()) { in visitLShr()
[all …]
DInstCombineAddSub.cpp911 if (Add.hasNoSignedWrap() || Add.hasNoUnsignedWrap()) in foldAddWithConstant()
1104 BOp->setHasNoUnsignedWrap(I.hasNoUnsignedWrap()); in canonicalizeLowbitMask()
1284 bool HasNUW = I.hasNoUnsignedWrap() && Op0->hasNoUnsignedWrap() && in factorizeMathWithShlOps()
1285 Op1->hasNoUnsignedWrap(); in factorizeMathWithShlOps()
1340 I.hasNoSignedWrap(), I.hasNoUnsignedWrap(), in visitAdd()
1378 Shl->setHasNoUnsignedWrap(I.hasNoUnsignedWrap()); in visitAdd()
1485 I.hasNoUnsignedWrap(), I.hasNoSignedWrap()); in visitAdd()
1547 if (!I.hasNoUnsignedWrap() && willNotOverflowUnsignedAdd(LHS, RHS, I)) { in visitAdd()
1919 I.hasNoSignedWrap(), I.hasNoUnsignedWrap(), in visitSub()
1972 if (!I.hasNoUnsignedWrap() && willNotOverflowUnsignedSub(Op0, Op1, I)) { in visitSub()
[all …]
DInstructionCombining.cpp301 static bool hasNoUnsignedWrap(BinaryOperator &I) { in hasNoUnsignedWrap() function
303 return OBO && OBO->hasNoUnsignedWrap(); in hasNoUnsignedWrap()
436 bool IsNUW = hasNoUnsignedWrap(I) && hasNoUnsignedWrap(*Op0); in SimplifyAssociativeOrCommutative()
535 bool IsNUW = hasNoUnsignedWrap(I) && in SimplifyAssociativeOrCommutative()
536 hasNoUnsignedWrap(*Op0) && in SimplifyAssociativeOrCommutative()
537 hasNoUnsignedWrap(*Op1); in SimplifyAssociativeOrCommutative()
704 HasNUW = I.hasNoUnsignedWrap(); in tryFactorization()
708 HasNUW &= LOBO->hasNoUnsignedWrap(); in tryFactorization()
713 HasNUW &= ROBO->hasNoUnsignedWrap(); in tryFactorization()
DInstCombineCompares.cpp1955 (Mul->hasNoUnsignedWrap() || Mul->hasNoSignedWrap())) in foldICmpMulConstant()
1972 if (MulC->isZero() || (!Mul->hasNoSignedWrap() && !Mul->hasNoUnsignedWrap())) in foldICmpMulConstant()
1984 if (Mul->hasNoUnsignedWrap() && C.urem(*MulC).isZero()) { in foldICmpMulConstant()
2009 assert(Mul->hasNoUnsignedWrap() && "Expected mul nuw"); in foldICmpMulConstant()
2120 if (Shl->hasNoUnsignedWrap()) { in foldICmpShlConstant()
2647 bool HasNUW = Sub->hasNoUnsignedWrap(); in foldICmpSubConstant()
2730 (Add->hasNoUnsignedWrap() && in foldICmpAddConstant()
4103 (CmpInst::isUnsigned(Pred) && BO0->hasNoUnsignedWrap()) || in foldICmpBinOp()
4108 (CmpInst::isUnsigned(Pred) && BO1->hasNoUnsignedWrap()) || in foldICmpBinOp()
4240 bool HasNUW = BO0->hasNoUnsignedWrap() && Diff.ule(*AP1); in foldICmpBinOp()
[all …]
DInstCombineSimplifyDemanded.cpp638 else if (IOp->hasNoUnsignedWrap()) in SimplifyDemandedUseBits()
1207 New->setHasNoUnsignedWrap(Orig->hasNoUnsignedWrap()); in simplifyShrShlDemandedBits()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Instrumentation/
DPoisonChecking.cpp114 if (I.hasNoUnsignedWrap()) { in generateCreationChecksForBinOp()
127 if (I.hasNoUnsignedWrap()) { in generateCreationChecksForBinOp()
140 if (I.hasNoUnsignedWrap()) { in generateCreationChecksForBinOp()
/openbsd/src/gnu/llvm/llvm/tools/llvm-reduce/deltas/
DReduceInstructionFlags.cpp28 if (OBO->hasNoUnsignedWrap() && !O.shouldKeep()) in reduceFlagsInModule()
/openbsd/src/gnu/llvm/llvm/lib/IR/
DInstruction.cpp173 bool Instruction::hasNoUnsignedWrap() const { in hasNoUnsignedWrap() function in Instruction
174 return cast<OverflowingBinaryOperator>(this)->hasNoUnsignedWrap(); in hasNoUnsignedWrap()
353 setHasNoUnsignedWrap(OB->hasNoUnsignedWrap()); in copyIRFlags()
376 setHasNoUnsignedWrap(hasNoUnsignedWrap() && OB->hasNoUnsignedWrap()); in andIRFlags()
DOperator.cpp28 return OBO->hasNoUnsignedWrap() || OBO->hasNoSignedWrap(); in hasPoisonGeneratingFlags()
/openbsd/src/gnu/llvm/llvm/include/llvm/Analysis/
DInstructionSimplify.h74 template <class InstT> bool hasNoUnsignedWrap(const InstT *Op) const { in hasNoUnsignedWrap() function
76 return Op->hasNoUnsignedWrap(); in hasNoUnsignedWrap()
DScalarEvolutionExpressions.h209 bool hasNoUnsignedWrap() const { in hasNoUnsignedWrap() function
/openbsd/src/gnu/llvm/llvm/lib/Analysis/
DPHITransAddr.cpp260 bool isNUW = cast<BinaryOperator>(Inst)->hasNoUnsignedWrap(); in PHITranslateSubExpr()
434 Res->setHasNoUnsignedWrap(cast<BinaryOperator>(Inst)->hasNoUnsignedWrap()); in InsertPHITranslatedSubExpr()
DValueTracking.cpp2080 return (OrZero || Q.IIQ.hasNoUnsignedWrap(BO) || in isPowerOfTwoRecurrence()
2096 return OrZero || Q.IIQ.hasNoUnsignedWrap(BO) || Q.IIQ.hasNoSignedWrap(BO); in isPowerOfTwoRecurrence()
2171 if (OrZero || Q.IIQ.hasNoUnsignedWrap(VOBO) || in isKnownToBeAPowerOfTwo()
2424 return BO->hasNoUnsignedWrap() || in isNonZeroRecurrence()
2428 return (BO->hasNoUnsignedWrap() || BO->hasNoSignedWrap()) && in isNonZeroRecurrence()
2431 return BO->hasNoUnsignedWrap() || BO->hasNoSignedWrap(); in isNonZeroRecurrence()
2594 if (Q.IIQ.hasNoUnsignedWrap(BO)) in isKnownNonZero()
2680 if ((Q.IIQ.hasNoSignedWrap(BO) || Q.IIQ.hasNoUnsignedWrap(BO)) && in isKnownNonZero()
2775 if ((!OBO1->hasNoUnsignedWrap() || !OBO2->hasNoUnsignedWrap()) && in getInvertibleOperands()
2791 if ((!OBO1->hasNoUnsignedWrap() || !OBO2->hasNoUnsignedWrap()) && in getInvertibleOperands()
[all …]
DInstructionSimplify.cpp1067 (!IsSigned && Q.IIQ.hasNoUnsignedWrap(Mul)) || in simplifyDivRem()
1748 bool IsNUW = IIQ.hasNoUnsignedWrap(AddInst); in simplifyAndOfICmpsWithAdd()
1905 bool IsNUW = IIQ.hasNoUnsignedWrap(AddInst); in simplifyOrOfICmpsWithAdd()
3277 Q.IIQ.hasNoUnsignedWrap(cast<OverflowingBinaryOperator>(LBO))) || in simplifyICmpWithBinOp()
3287 Q.IIQ.hasNoUnsignedWrap(cast<OverflowingBinaryOperator>(RBO))) || in simplifyICmpWithBinOp()
3378 Q.IIQ.hasNoUnsignedWrap(cast<OverflowingBinaryOperator>(LBO)) || in simplifyICmpWithBinOp()
3427 bool NUW = Q.IIQ.hasNoUnsignedWrap(LBO) && Q.IIQ.hasNoUnsignedWrap(RBO); in simplifyICmpWithBinOp()
6606 Q.IIQ.hasNoUnsignedWrap(cast<BinaryOperator>(I)), Q); in simplifyInstructionWithOperands()
6612 Q.IIQ.hasNoUnsignedWrap(cast<BinaryOperator>(I)), Q); in simplifyInstructionWithOperands()
6618 Q.IIQ.hasNoUnsignedWrap(cast<BinaryOperator>(I)), Q); in simplifyInstructionWithOperands()
[all …]
DDemandedBits.cpp212 else if (S->hasNoUnsignedWrap()) in determineLiveOperandBits()
DScalarEvolution.cpp308 if (AR->hasNoUnsignedWrap()) in print()
353 if (NAry->hasNoUnsignedWrap()) in print()
1687 if (!AR->hasNoUnsignedWrap()) { in getZeroExtendExprImpl()
1694 if (AR->hasNoUnsignedWrap()) { in getZeroExtendExprImpl()
1778 if (AR->hasNoUnsignedWrap()) { in getZeroExtendExprImpl()
1851 if (SA->hasNoUnsignedWrap()) { in getZeroExtendExprImpl()
1884 if (SM->hasNoUnsignedWrap()) { in getZeroExtendExprImpl()
2405 if (OBO->hasNoUnsignedWrap() && OBO->hasNoSignedWrap()) in getStrengthenedNoWrapFlagsFromBinOp()
2410 if (OBO->hasNoUnsignedWrap()) in getStrengthenedNoWrapFlagsFromBinOp()
2427 if (!OBO->hasNoUnsignedWrap() && in getStrengthenedNoWrapFlagsFromBinOp()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Target/WebAssembly/
DWebAssemblyISelDAGToDAG.cpp304 if (N.getOpcode() == ISD::ADD && !N.getNode()->getFlags().hasNoUnsignedWrap()) in SelectAddrAddOperands()
/openbsd/src/gnu/llvm/llvm/include/llvm/IR/
DOperator.h99 bool hasNoUnsignedWrap() const { in hasNoUnsignedWrap() function
DInstruction.h373 bool hasNoUnsignedWrap() const LLVM_READONLY;
/openbsd/src/gnu/llvm/llvm/lib/Target/AMDGPU/
DAMDGPUCodeGenPrepare.cpp290 return I.hasNoUnsignedWrap(); in promotedOpIsNSW()
304 return I.hasNoUnsignedWrap(); in promotedOpIsNUW()
/openbsd/src/gnu/llvm/llvm/lib/FuzzMutate/
DIRMutator.cpp230 [&Inst]() { Inst.setHasNoUnsignedWrap(!Inst.hasNoUnsignedWrap()); }); in mutate()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Scalar/
DIndVarSimplify.cpp1106 if (BO->hasNoUnsignedWrap()) in linearFunctionTestReplace()
1107 BO->setHasNoUnsignedWrap(AR->hasNoUnsignedWrap()); in linearFunctionTestReplace()
/openbsd/src/gnu/llvm/llvm/lib/CodeGen/
DTypePromotion.cpp408 return I->hasNoUnsignedWrap(); in isPromotedResultSafe()
/openbsd/src/gnu/llvm/llvm/tools/llvm-reduce/
DReducerWorkItem.cpp612 if (OverflowOp->hasNoUnsignedWrap()) in computeIRComplexityScoreImpl()

123