/freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
H A D | IRBuilder.h | 1271 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 D | ConstantFolder.h | 69 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument 77 if (HasNSW) in FoldNoWrapBinOp()
|
H A D | IRBuilderFolder.h | 43 bool HasNSW) const = 0;
|
H A D | Constants.h | 1035 bool HasNSW = false); 1038 bool HasNSW = false); 1040 bool HasNSW = false); 1042 bool HasNSW = false); 1045 bool HasNSW = false);
|
H A D | NoFolder.h | 59 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineMulDivRem.cpp | 151 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 D | InstCombineAddSub.cpp | 1386 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 D | InstructionCombining.cpp | 708 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 D | InstCombineCompares.cpp | 2813 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 D | TargetFolder.h | 80 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument 88 if (HasNSW) in FoldNoWrapBinOp()
|
H A D | InstSimplifyFolder.h | 61 bool HasNUW, bool HasNSW) const override { in FoldNoWrapBinOp() argument
|
/freebsd/contrib/llvm-project/llvm/lib/IR/ |
H A D | Constants.cpp | 2441 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 D | Core.cpp | 3529 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 D | VPlan.h | 903 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 D | VPlanRecipes.cpp | 731 if (WrapFlags.HasNSW) in printFlags()
|
/freebsd/contrib/llvm-project/llvm/include/llvm-c/ |
H A D | Core.h | 4086 void LLVMSetNSW(LLVMValueRef ArithInst, LLVMBool HasNSW);
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | ValueTracking.cpp | 8530 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 D | CGBuiltin.cpp | 2010 static Value *EmitAbs(CodeGenFunction &CGF, Value *ArgValue, bool HasNSW) { in EmitAbs() argument 2013 ConstantInt::get(CGF.Builder.getInt1Ty(), HasNSW)); in EmitAbs()
|