| /llvm-project-15.0.7/llvm/unittests/IR/ |
| H A D | ConstantRangeTest.cpp | 850 OBO::NoUnsignedWrap | OBO::NoSignedWrap), in TEST_F() 863 OBO::NoUnsignedWrap | OBO::NoSignedWrap), in TEST_F() 868 return CR1.addWithNoWrap(CR2, OBO::NoUnsignedWrap | OBO::NoSignedWrap); in TEST_F() 943 return CR1.subWithNoWrap(CR2, OBO::NoUnsignedWrap | OBO::NoSignedWrap); in TEST_F() 1564 OBO::NoSignedWrap); in TEST() 1570 OBO::NoSignedWrap); in TEST() 1576 OBO::NoUnsignedWrap); in TEST() 1582 OBO::NoUnsignedWrap); in TEST() 1700 OBO::NoUnsignedWrap), in TEST() 1707 OBO::NoSignedWrap), in TEST() [all …]
|
| /llvm-project-15.0.7/llvm/lib/IR/ |
| H A D | Operator.cpp | 27 auto *OBO = cast<OverflowingBinaryOperator>(this); in hasPoisonGeneratingFlags() local 28 return OBO->hasNoUnsignedWrap() || OBO->hasNoSignedWrap(); in hasPoisonGeneratingFlags()
|
| H A D | ConstantRange.cpp | 291 using OBO = OverflowingBinaryOperator; in makeGuaranteedNoWrapRegion() typedef 295 assert((NoWrapKind == OBO::NoSignedWrap || in makeGuaranteedNoWrapRegion() 296 NoWrapKind == OBO::NoUnsignedWrap) && in makeGuaranteedNoWrapRegion() 299 bool Unsigned = NoWrapKind == OBO::NoUnsignedWrap; in makeGuaranteedNoWrapRegion() 1018 using OBO = OverflowingBinaryOperator; in addWithNoWrap() typedef 1026 if (NoWrapKind & OBO::NoSignedWrap) in addWithNoWrap() 1029 if (NoWrapKind & OBO::NoUnsignedWrap) in addWithNoWrap() 1065 using OBO = OverflowingBinaryOperator; in subWithNoWrap() typedef 1073 if (NoWrapKind & OBO::NoSignedWrap) in subWithNoWrap() 1076 if (NoWrapKind & OBO::NoUnsignedWrap) { in subWithNoWrap()
|
| H A D | AsmWriter.cpp | 1315 if (const OverflowingBinaryOperator *OBO = in WriteOptimizationInfo() local 1317 if (OBO->hasNoUnsignedWrap()) in WriteOptimizationInfo() 1319 if (OBO->hasNoSignedWrap()) in WriteOptimizationInfo()
|
| /llvm-project-15.0.7/clang-tools-extra/clang-tidy/readability/ |
| H A D | FunctionCognitiveComplexityCheck.cpp | 225 using OBO = Optional<BinaryOperator::Opcode>; typedef in clang::tidy::readability::__anona0326b410111::FunctionASTVisitor 226 std::stack<OBO, SmallVector<OBO, 4>> BinaryOperatorsStack;
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyIndVar.cpp | 96 bool strengthenOverflowingOperation(BinaryOperator *OBO, 1372 const OverflowingBinaryOperator *OBO = in getExtendedOperandRecurrence() local 1375 if (ExtKind == ExtendKind::Sign && OBO->hasNoSignedWrap()) in getExtendedOperandRecurrence() 1378 else if (ExtKind == ExtendKind::Zero && OBO->hasNoUnsignedWrap()) in getExtendedOperandRecurrence() 1543 const OverflowingBinaryOperator *OBO = in widenWithVariantUse() local 1546 bool CanSignExtend = ExtKind == ExtendKind::Sign && OBO->hasNoSignedWrap(); in widenWithVariantUse() 1547 bool CanZeroExtend = ExtKind == ExtendKind::Zero && OBO->hasNoUnsignedWrap(); in widenWithVariantUse() 1609 const SCEV *LHS = SE->getSCEV(OBO->getOperand(0)); in widenWithVariantUse() 1610 const SCEV *RHS = SE->getSCEV(OBO->getOperand(1)); in widenWithVariantUse()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineMulDivRem.cpp | 837 auto *OBO = cast<OverflowingBinaryOperator>(Op0); in commonIDivTransforms() local 838 Mul->setHasNoUnsignedWrap(!IsSigned && OBO->hasNoUnsignedWrap()); in commonIDivTransforms() 839 Mul->setHasNoSignedWrap(OBO->hasNoSignedWrap()); in commonIDivTransforms() 864 auto *OBO = cast<OverflowingBinaryOperator>(Op0); in commonIDivTransforms() local 865 Mul->setHasNoUnsignedWrap(!IsSigned && OBO->hasNoUnsignedWrap()); in commonIDivTransforms() 866 Mul->setHasNoSignedWrap(OBO->hasNoSignedWrap()); in commonIDivTransforms()
|
| H A D | InstructionCombining.cpp | 276 auto *OBO = dyn_cast<OverflowingBinaryOperator>(&I); in maintainNoSignedWrap() local 277 if (!OBO || !OBO->hasNoSignedWrap()) in maintainNoSignedWrap() 299 auto *OBO = dyn_cast<OverflowingBinaryOperator>(&I); in hasNoUnsignedWrap() local 300 return OBO && OBO->hasNoUnsignedWrap(); in hasNoUnsignedWrap() 304 auto *OBO = dyn_cast<OverflowingBinaryOperator>(&I); in hasNoSignedWrap() local 305 return OBO && OBO->hasNoSignedWrap(); in hasNoSignedWrap()
|
| H A D | InstCombineSelect.cpp | 1216 if (auto *OBO = dyn_cast<OverflowingBinaryOperator>(FalseVal)) { in foldSelectValueEquivalence() local 1217 WasNUW = OBO->hasNoUnsignedWrap(); in foldSelectValueEquivalence() 1218 WasNSW = OBO->hasNoSignedWrap(); in foldSelectValueEquivalence()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | CorrelatedValuePropagation.cpp | 993 using OBO = OverflowingBinaryOperator; in processBinOp() typedef 1014 Opcode, RRange, OBO::NoUnsignedWrap); in processBinOp() 1020 Opcode, RRange, OBO::NoSignedWrap); in processBinOp()
|
| /llvm-project-15.0.7/llvm/lib/Analysis/ |
| H A D | ScalarEvolution.cpp | 2326 if (OBO->hasNoUnsignedWrap() && OBO->hasNoSignedWrap()) in getStrengthenedNoWrapFlagsFromBinOp() 2331 if (OBO->hasNoUnsignedWrap()) in getStrengthenedNoWrapFlagsFromBinOp() 2333 if (OBO->hasNoSignedWrap()) in getStrengthenedNoWrapFlagsFromBinOp() 2346 if (!OBO->hasNoUnsignedWrap() && in getStrengthenedNoWrapFlagsFromBinOp() 2353 if (!OBO->hasNoSignedWrap() && in getStrengthenedNoWrapFlagsFromBinOp() 2374 using OBO = OverflowingBinaryOperator; in StrengthenNoWrapFlags() typedef 5072 IsNSW = OBO->hasNoSignedWrap(); in BinaryOp() 5073 IsNUW = OBO->hasNoUnsignedWrap(); in BinaryOp() 6435 unsigned WrapType = OBO::AnyWrap; in getRangeRef() 6437 WrapType |= OBO::NoSignedWrap; in getRangeRef() [all …]
|
| H A D | LoopAccessAnalysis.cpp | 1302 if (auto *OBO = dyn_cast<OverflowingBinaryOperator>(NonConstIndex)) in isNoWrapAddRec() local 1303 if (OBO->hasNoSignedWrap() && in isNoWrapAddRec() 1306 isa<ConstantInt>(OBO->getOperand(1))) { in isNoWrapAddRec() 1307 auto *OpScev = PSE.getSCEV(OBO->getOperand(0)); in isNoWrapAddRec()
|
| H A D | LazyValueInfo.cpp | 958 if (auto *OBO = dyn_cast<OverflowingBinaryOperator>(BO)) { in solveBlockValueBinaryOp() local 960 if (OBO->hasNoUnsignedWrap()) in solveBlockValueBinaryOp() 962 if (OBO->hasNoSignedWrap()) in solveBlockValueBinaryOp()
|
| H A D | ValueTracking.cpp | 2850 if (auto *OBO = dyn_cast<OverflowingBinaryOperator>(V2)) { in isNonEqualMul() local 2852 return match(OBO, m_Mul(m_Specific(V1), m_APInt(C))) && in isNonEqualMul() 2853 (OBO->hasNoUnsignedWrap() || OBO->hasNoSignedWrap()) && in isNonEqualMul() 2863 if (auto *OBO = dyn_cast<OverflowingBinaryOperator>(V2)) { in isNonEqualShl() local 2865 return match(OBO, m_Shl(m_Specific(V1), m_APInt(C))) && in isNonEqualShl() 2866 (OBO->hasNoUnsignedWrap() || OBO->hasNoSignedWrap()) && in isNonEqualShl()
|
| /llvm-project-15.0.7/llvm/lib/Target/DirectX/DXILWriter/ |
| H A D | DXILBitcodeWriter.cpp | 772 if (const auto *OBO = dyn_cast<OverflowingBinaryOperator>(V)) { in getOptimizationFlags() local 773 if (OBO->hasNoSignedWrap()) in getOptimizationFlags() 775 if (OBO->hasNoUnsignedWrap()) in getOptimizationFlags()
|
| /llvm-project-15.0.7/llvm/include/llvm/Analysis/ |
| H A D | ScalarEvolution.h | 542 getStrengthenedNoWrapFlagsFromBinOp(const OverflowingBinaryOperator *OBO);
|
| /llvm-project-15.0.7/llvm/lib/Bitcode/Writer/ |
| H A D | BitcodeWriter.cpp | 1492 if (const auto *OBO = dyn_cast<OverflowingBinaryOperator>(V)) { in getOptimizationFlags() local 1493 if (OBO->hasNoSignedWrap()) in getOptimizationFlags() 1495 if (OBO->hasNoUnsignedWrap()) in getOptimizationFlags()
|