| /freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | SimplifyQuery.h | 47 bool isExact(const BinaryOperator *Op) const { in isExact() function 49 return cast<PossiblyExactOperator>(Op)->isExact(); in isExact()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineMulDivRem.cpp | 391 if (Div->isExact()) { in visitMul() 1077 NewDiv->setIsExact(I.isExact()); in commonIDivTransforms() 1103 BO->setIsExact(I.isExact()); in commonIDivTransforms() 1194 NewDiv->setIsExact(I.isExact()); in commonIDivTransforms() 1216 NewDiv->setIsExact(I.isExact() && InnerDiv->isExact()); in commonIDivTransforms() 1430 if (I.isExact() && cast<PossiblyExactOperator>(Op0)->isExact()) in visitUDiv() 1472 if (I.isExact()) { in visitSDiv() 1520 BO->setIsExact(I.isExact()); in visitSDiv() 1542 if (!I.isExact() && in visitSDiv() 1553 BO->setIsExact(I.isExact()); in visitSDiv() [all …]
|
| H A D | InstCombineShifts.cpp | 159 NewShift->setIsExact(Sh0->isExact() && Sh1->isExact()); in reassociateShiftAmtsOfTwoSameDirectionShifts() 466 return I.isExact() && AC->eq(AC->shl(PosOffset).lshr(PosOffset)); in commonShiftTransforms() 468 return I.isExact() && AC->eq(AC->shl(PosOffset).ashr(PosOffset)); in commonShiftTransforms() 954 if (I.isExact()) in setShiftFlags() 1089 NewShr->setIsExact(OldShr->isExact()); in visitShl() 1236 if (Value *V = simplifyLShrInst(I.getOperand(0), I.getOperand(1), I.isExact(), in visitLShr() 1282 NewLShr->setIsExact(I.isExact()); in visitLShr() 1287 Value *NewLShr = Builder.CreateLShr(X, ShiftDiff, "", I.isExact()); in visitLShr() 1565 if (Value *V = simplifyAShrInst(I.getOperand(0), I.getOperand(1), I.isExact(), in visitAShr() 1600 NewAShr->setIsExact(I.isExact()); in visitAShr() [all …]
|
| H A D | InstCombineSimplifyDemanded.cpp | 800 LShr->setIsExact(cast<BinaryOperator>(I)->isExact()); in SimplifyDemandedUseBits() 830 cast<BinaryOperator>(I)->isExact()); in SimplifyDemandedUseBits() 1314 if (cast<BinaryOperator>(Shr)->isExact()) in simplifyShrShlDemandedBits()
|
| H A D | InstCombineNegator.cpp | 283 NewInstr->setIsExact(I->isExact()); in visitImpl()
|
| H A D | InstCombineCompares.cpp | 2381 if (Cmp.isEquality() && Shr->isExact() && C.isZero()) in foldICmpShrConstant() 2427 bool IsExact = Shr->isExact(); in foldICmpShrConstant() 2503 if (Shr->isExact()) in foldICmpShrConstant() 2678 APInt RangeSize = Div->isExact() ? APInt(C2->getBitWidth(), 1) : *C2; in foldICmpDivConstant() 2719 if (Div->isExact()) in foldICmpDivConstant() 3424 if (BO->isExact()) { in foldICmpBinOpEqualityWithConstant() 4977 if (I.isSigned() || !BO0->isExact() || !BO1->isExact()) in foldICmpBinOp() 4983 !BO0->isExact() || !BO1->isExact()) in foldICmpBinOp() 4988 if (!BO0->isExact() || !BO1->isExact()) in foldICmpBinOp()
|
| /freebsd-14.2/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | IRBuilder.h | 1373 bool isExact = false) { 1376 if (!isExact) 1386 bool isExact = false) { 1389 if (!isExact) 1432 bool isExact = false) { 1435 if (!isExact) 1441 bool isExact = false) { 1446 bool isExact = false) { 1451 bool isExact = false) { 1454 if (!isExact) [all …]
|
| H A D | Operator.h | 145 bool isExact() const { in isExact() function
|
| H A D | Instruction.h | 509 bool isExact() const LLVM_READONLY;
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
| H A D | PoisonChecking.cpp | 148 if (I.isExact()) { in generateCreationChecksForBinOp() 157 if (I.isExact()) { in generateCreationChecksForBinOp()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/IR/ |
| H A D | Instruction.cpp | 440 bool Instruction::isExact() const { in isExact() function in Instruction 441 return cast<PossiblyExactOperator>(this)->isExact(); in isExact() 555 setIsExact(PE->isExact()); in copyIRFlags() 585 setIsExact(isExact() && PE->isExact()); in andIRFlags()
|
| H A D | Operator.cpp | 34 return cast<PossiblyExactOperator>(this)->isExact(); in hasPoisonGeneratingFlags()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | CorrelatedValuePropagation.cpp | 721 BinOp->setIsExact(Instr->isExact()); in narrowSDivOrSRem() 840 BinOp->setIsExact(Instr->isExact()); in narrowUDivOrURem() 961 UDiv->setIsExact(SDI->isExact()); in processSDiv() 1028 BO->setIsExact(SDI->isExact()); in processAShr()
|
| H A D | IndVarSimplify.cpp | 183 bool isExact = false; in ConvertToSInt() local 187 APFloat::rmTowardZero, &isExact) != APFloat::opOK || in ConvertToSInt() 188 !isExact) in ConvertToSInt()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | DemandedBits.cpp | 200 if (cast<LShrOperator>(UserI)->isExact()) in determineLiveOperandBits() 220 if (cast<AShrOperator>(UserI)->isExact()) in determineLiveOperandBits()
|
| H A D | ValueTracking.cpp | 976 KnownBits::udiv(Known, Known2, Q.IIQ.isExact(cast<BinaryOperator>(I))); in computeKnownBitsFromOperator() 1913 return (OrZero || Q.IIQ.isExact(BO)) && in isPowerOfTwoRecurrence() 1922 return OrZero || Q.IIQ.isExact(BO); in isPowerOfTwoRecurrence() 1977 if (OrZero || Q.IIQ.isExact(cast<BinaryOperator>(I))) in isKnownToBeAPowerOfTwo() 1981 if (Q.IIQ.isExact(cast<BinaryOperator>(I))) in isKnownToBeAPowerOfTwo() 2294 return BO->isExact(); in isNonZeroRecurrence() 2494 if (BO->isExact()) in isKnownNonZeroFromOperator() 2510 if (cast<PossiblyExactOperator>(I)->isExact()) in isKnownNonZeroFromOperator() 2925 if (!PEO1->isExact() || !PEO2->isExact()) in getInvertibleOperands() 8581 if (!C->isZero() && IIQ.isExact(&BO)) in setLimitsForBinOp() [all …]
|
| H A D | InstructionSimplify.cpp | 3456 if (ICmpInst::isSigned(Pred) || !Q.IIQ.isExact(LBO) || in simplifyICmpWithBinOp() 3457 !Q.IIQ.isExact(RBO)) in simplifyICmpWithBinOp() 3464 if (!ICmpInst::isEquality(Pred) || !Q.IIQ.isExact(LBO) || in simplifyICmpWithBinOp() 3465 !Q.IIQ.isExact(RBO)) in simplifyICmpWithBinOp() 3472 if (!Q.IIQ.isExact(LBO) || !Q.IIQ.isExact(RBO)) in simplifyICmpWithBinOp() 7017 Q.IIQ.isExact(cast<BinaryOperator>(I)), Q, in simplifyInstructionWithOperands() 7021 Q.IIQ.isExact(cast<BinaryOperator>(I)), Q, in simplifyInstructionWithOperands() 7039 Q.IIQ.isExact(cast<BinaryOperator>(I)), Q, in simplifyInstructionWithOperands() 7043 Q.IIQ.isExact(cast<BinaryOperator>(I)), Q, in simplifyInstructionWithOperands()
|
| /freebsd-14.2/contrib/llvm-project/lldb/source/Utility/ |
| H A D | Scalar.cpp | 281 bool isExact; in ToAPInt() local 282 f.convertToInteger(result, llvm::APFloat::rmTowardZero, &isExact); in ToAPInt()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Support/ |
| H A D | APFloat.cpp | 2587 roundingMode rounding_mode, bool *isExact) const { in convertToSignExtendedInteger() 2592 *isExact = false; in convertToSignExtendedInteger() 2604 *isExact = !sign; in convertToSignExtendedInteger() 2683 *isExact = true; in convertToSignExtendedInteger() 2701 roundingMode rounding_mode, bool *isExact) const { in convertToInteger() 2705 isExact); in convertToInteger() 5245 bool *isExact) const { in convertToInteger() 5249 rounding_mode, isExact); in convertToInteger()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
| H A D | TruncInstCombine.cpp | 443 ResI->setIsExact(PEO->isExact()); in ReduceExpressionGraph()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | FastISel.cpp | 304 bool isExact; in materializeConstant() local 305 (void)Flt.convertToInteger(SIntVal, APFloat::rmTowardZero, &isExact); in materializeConstant() 306 if (isExact) { in materializeConstant() 492 cast<BinaryOperator>(I)->isExact() && isPowerOf2_64(Imm)) { in selectBinaryOp()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyIndVar.cpp | 167 if (UseInst->isExact() && LHS != SE->getMulExpr(FoldedExpr, RHS)) in foldIVUser() 304 UDiv->setIsExact(SDiv->isExact()); in eliminateSDiv() 814 if (!Shr->isExact() && IVRange.getUnsignedMin().uge(*C)) { in strengthenRightShift()
|
| H A D | SCCPSolver.cpp | 190 NewInst->setIsExact(Inst.isExact()); in replaceSignedInst() 204 NewInst->setIsExact(Inst.isExact()); in replaceSignedInst()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/FuzzMutate/ |
| H A D | IRMutator.cpp | 258 Modifications.push_back([&Inst] { Inst.setIsExact(!Inst.isExact()); }); in mutate()
|
| /freebsd-14.2/contrib/llvm-project/clang/lib/AST/ |
| H A D | ASTStructuralEquivalence.cpp | 247 return E1->isExact() == E2->isExact() && E1->getValue() == E2->getValue(); in IsStmtEquivalent()
|