Home
last modified time | relevance | path

Searched refs:isExact (Results 1 – 25 of 47) sorted by relevance

12

/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DSimplifyQuery.h47 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 DInstCombineMulDivRem.cpp391 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 DInstCombineShifts.cpp159 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 DInstCombineSimplifyDemanded.cpp800 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 DInstCombineNegator.cpp283 NewInstr->setIsExact(I->isExact()); in visitImpl()
H A DInstCombineCompares.cpp2381 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 DIRBuilder.h1373 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 DOperator.h145 bool isExact() const { in isExact() function
H A DInstruction.h509 bool isExact() const LLVM_READONLY;
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DPoisonChecking.cpp148 if (I.isExact()) { in generateCreationChecksForBinOp()
157 if (I.isExact()) { in generateCreationChecksForBinOp()
/freebsd-14.2/contrib/llvm-project/llvm/lib/IR/
H A DInstruction.cpp440 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 DOperator.cpp34 return cast<PossiblyExactOperator>(this)->isExact(); in hasPoisonGeneratingFlags()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DCorrelatedValuePropagation.cpp721 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 DIndVarSimplify.cpp183 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 DDemandedBits.cpp200 if (cast<LShrOperator>(UserI)->isExact()) in determineLiveOperandBits()
220 if (cast<AShrOperator>(UserI)->isExact()) in determineLiveOperandBits()
H A DValueTracking.cpp976 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 DInstructionSimplify.cpp3456 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 DScalar.cpp281 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 DAPFloat.cpp2587 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 DTruncInstCombine.cpp443 ResI->setIsExact(PEO->isExact()); in ReduceExpressionGraph()
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DFastISel.cpp304 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 DSimplifyIndVar.cpp167 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 DSCCPSolver.cpp190 NewInst->setIsExact(Inst.isExact()); in replaceSignedInst()
204 NewInst->setIsExact(Inst.isExact()); in replaceSignedInst()
/freebsd-14.2/contrib/llvm-project/llvm/lib/FuzzMutate/
H A DIRMutator.cpp258 Modifications.push_back([&Inst] { Inst.setIsExact(!Inst.isExact()); }); in mutate()
/freebsd-14.2/contrib/llvm-project/clang/lib/AST/
H A DASTStructuralEquivalence.cpp247 return E1->isExact() == E2->isExact() && E1->getValue() == E2->getValue(); in IsStmtEquivalent()

12