Home
last modified time | relevance | path

Searched refs:HasNSW (Results 1 – 18 of 18) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DIRBuilder.h1271 if (HasNSW) BO->setHasNoSignedWrap(); in CreateInsertNUWNSWBinOp()
1322 bool HasNUW = false, bool HasNSW = false) {
1327 HasNSW);
1339 bool HasNUW = false, bool HasNSW = false) {
1344 HasNSW);
1361 HasNSW);
1416 HasNUW, HasNSW);
1422 HasNUW, HasNSW);
1428 HasNUW, HasNSW);
1716 bool HasNSW = false) {
[all …]
H A DConstantFolder.h69 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument
77 if (HasNSW) in FoldNoWrapBinOp()
H A DIRBuilderFolder.h43 bool HasNSW) const = 0;
H A DConstants.h1035 bool HasNSW = false);
1038 bool HasNSW = false);
1040 bool HasNSW = false);
1042 bool HasNSW = false);
1045 bool HasNSW = false);
H A DNoFolder.h59 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp151 const bool HasNSW = Mul.hasNoSignedWrap(); in foldMulShl1() local
168 bool PropagateNSW = HasNSW && Shift->hasNoSignedWrap(); in foldMulShl1()
212 const bool HasNSW = I.hasNoSignedWrap(); in visitMul() local
217 return HasNSW ? BinaryOperator::CreateNSWNeg(Op0) in visitMul()
235 if (HasNSW && Mul->hasNoSignedWrap() && Shl->isNotMinSignedValue()) in visitMul()
247 if (HasNSW) { in visitMul()
262 Negator::Negate(/*IsNegation*/ true, HasNSW, Op0, *this)) { in visitMul()
267 HasNSW && Op1C->isNotMinSignedValue())); in visitMul()
528 if (!HasNSW && willNotOverflowSignedMul(Op0, Op1, I)) { in visitMul()
963 bool HasNSW = Mul->hasNoSignedWrap() && Shl->hasNoSignedWrap(); in foldIDivShl() local
[all …]
H A DInstCombineAddSub.cpp1386 bool HasNSW = I.hasNoSignedWrap() && Op0->hasNoSignedWrap() && in factorizeMathWithShlOps() local
1394 NewI->setHasNoSignedWrap(HasNSW); in factorizeMathWithShlOps()
1398 NewShl->setHasNoSignedWrap(HasNSW); in factorizeMathWithShlOps()
2244 bool HasNSW = HasNUW && I.hasNoSignedWrap() && LHSSub->hasNoSignedWrap(); in visitSub() local
2246 /* HasNSW */ HasNSW); in visitSub()
2249 Sub->setHasNoSignedWrap(HasNSW); in visitSub()
H A DInstructionCombining.cpp708 bool HasNSW = false; in tryFactorization() local
711 HasNSW = I.hasNoSignedWrap(); in tryFactorization()
715 HasNSW &= LOBO->hasNoSignedWrap(); in tryFactorization()
720 HasNSW &= ROBO->hasNoSignedWrap(); in tryFactorization()
734 cast<Instruction>(RetVal)->setHasNoSignedWrap(HasNSW); in tryFactorization()
H A DInstCombineCompares.cpp2813 bool HasNSW = Sub->hasNoSignedWrap(); in foldICmpSubConstant() local
2816 ((Cmp.isUnsigned() && HasNUW) || (Cmp.isSigned() && HasNSW)) && in foldICmpSubConstant()
2874 HasNUW, HasNSW); in foldICmpSubConstant()
4640 bool &HasNSW, bool &HasNUW) -> bool { in foldICmpBinOp() argument
4643 HasNSW = BO.hasNoSignedWrap(); in foldICmpBinOp()
4646 (CmpInst::isSigned(Pred) && HasNSW); in foldICmpBinOp()
4649 HasNSW = true; in foldICmpBinOp()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DTargetFolder.h80 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument
88 if (HasNSW) in FoldNoWrapBinOp()
H A DInstSimplifyFolder.h61 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DConstants.cpp2441 Constant *ConstantExpr::getNeg(Constant *C, bool HasNUW, bool HasNSW) { in getNeg() argument
2444 return getSub(ConstantInt::get(C->getType(), 0), C, HasNUW, HasNSW); in getNeg()
2454 bool HasNUW, bool HasNSW) { in getAdd() argument
2456 (HasNSW ? OverflowingBinaryOperator::NoSignedWrap : 0); in getAdd()
2461 bool HasNUW, bool HasNSW) { in getSub() argument
2463 (HasNSW ? OverflowingBinaryOperator::NoSignedWrap : 0); in getSub()
2468 bool HasNUW, bool HasNSW) { in getMul() argument
2470 (HasNSW ? OverflowingBinaryOperator::NoSignedWrap : 0); in getMul()
2479 bool HasNUW, bool HasNSW) { in getShl() argument
2481 (HasNSW ? OverflowingBinaryOperator::NoSignedWrap : 0); in getShl()
H A DCore.cpp3529 void LLVMSetNSW(LLVMValueRef ArithInst, LLVMBool HasNSW) { in LLVMSetNSW() argument
3531 cast<Instruction>(P)->setHasNoSignedWrap(HasNSW); in LLVMSetNSW()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlan.h903 char HasNSW : 1; member
905 WrapFlagsTy(bool HasNUW, bool HasNSW) : HasNUW(HasNUW), HasNSW(HasNSW) {} in WrapFlagsTy()
1029 WrapFlags.HasNSW = false; in dropPoisonGeneratingFlags()
1058 I->setHasNoSignedWrap(WrapFlags.HasNSW); in setFlags()
1113 return WrapFlags.HasNSW; in hasNoSignedWrap()
H A DVPlanRecipes.cpp731 if (WrapFlags.HasNSW) in printFlags()
/freebsd/contrib/llvm-project/llvm/include/llvm-c/
H A DCore.h4086 void LLVMSetNSW(LLVMValueRef ArithInst, LLVMBool HasNSW);
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DValueTracking.cpp8530 bool HasNSW = IIQ.hasNoSignedWrap(&BO); in setLimitsForBinOp() local
8537 if (PreferSignedRange && HasNSW && HasNUW) in setLimitsForBinOp()
8543 } else if (HasNSW) { in setLimitsForBinOp()
/freebsd/contrib/llvm-project/clang/lib/CodeGen/
H A DCGBuiltin.cpp2010 static Value *EmitAbs(CodeGenFunction &CGF, Value *ArgValue, bool HasNSW) { in EmitAbs() argument
2013 ConstantInt::get(CGF.Builder.getInt1Ty(), HasNSW)); in EmitAbs()