Home
last modified time | relevance | path

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

12

/NextBSD/contrib/llvm/include/llvm/IR/
HDConstantFolder.h56 bool isExact = false) const {
57 return ConstantExpr::getUDiv(LHS, RHS, isExact);
60 bool isExact = false) const {
61 return ConstantExpr::getSDiv(LHS, RHS, isExact);
80 bool isExact = false) const {
81 return ConstantExpr::getLShr(LHS, RHS, isExact);
84 bool isExact = false) const {
85 return ConstantExpr::getAShr(LHS, RHS, isExact);
HDNoFolder.h89 bool isExact = false) const {
90 if (!isExact)
98 bool isExact = false) const {
99 if (!isExact)
126 bool isExact = false) const {
127 if (!isExact)
132 bool isExact = false) const {
133 if (!isExact)
HDIRBuilder.h771 bool isExact = false) {
774 return Insert(Folder.CreateUDiv(LC, RC, isExact), Name);
775 if (!isExact)
783 bool isExact = false) {
786 return Insert(Folder.CreateSDiv(LC, RC, isExact), Name);
787 if (!isExact)
843 bool isExact = false) {
846 return Insert(Folder.CreateLShr(LC, RC, isExact), Name);
847 if (!isExact)
852 bool isExact = false) {
[all …]
HDConstants.h904 static Constant *getUDiv(Constant *C1, Constant *C2, bool isExact = false);
905 static Constant *getSDiv(Constant *C1, Constant *C2, bool isExact = false);
915 static Constant *getLShr(Constant *C1, Constant *C2, bool isExact = false);
916 static Constant *getAShr(Constant *C1, Constant *C2, bool isExact = false);
HDOperator.h141 bool isExact() const { in isExact() function
HDInstrTypes.h353 bool isExact() const;
HDPatternMatch.h686 return PEO->isExact() && SubPattern.match(V); in match()
/NextBSD/contrib/llvm/include/llvm/Analysis/
HDTargetFolder.h71 Constant *CreateUDiv(Constant *LHS, Constant *RHS, bool isExact = false)const{
72 return Fold(ConstantExpr::getUDiv(LHS, RHS, isExact));
74 Constant *CreateSDiv(Constant *LHS, Constant *RHS, bool isExact = false)const{
75 return Fold(ConstantExpr::getSDiv(LHS, RHS, isExact));
93 Constant *CreateLShr(Constant *LHS, Constant *RHS, bool isExact = false)const{
94 return Fold(ConstantExpr::getLShr(LHS, RHS, isExact));
96 Constant *CreateAShr(Constant *LHS, Constant *RHS, bool isExact = false)const{
97 return Fold(ConstantExpr::getAShr(LHS, RHS, isExact));
HDInstructionSimplify.h163 Value *SimplifyLShrInst(Value *Op0, Value *Op1, bool isExact,
172 Value *SimplifyAShrInst(Value *Op0, Value *Op1, bool isExact,
/NextBSD/contrib/llvm/lib/Transforms/InstCombine/
HDInstCombinePHI.cpp34 bool isNUW = false, isNSW = false, isExact = false; in FoldPHIArgBinOpIntoPHI() local
41 isExact = PEO->isExact(); in FoldPHIArgBinOpIntoPHI()
62 if (isExact) in FoldPHIArgBinOpIntoPHI()
63 isExact = cast<PossiblyExactOperator>(I)->isExact(); in FoldPHIArgBinOpIntoPHI()
125 if (isExact) NewBinOp->setIsExact(); in FoldPHIArgBinOpIntoPHI()
403 bool isNUW = false, isNSW = false, isExact = false; in FoldPHIArgOpIntoPHI() local
427 isExact = PEO->isExact(); in FoldPHIArgOpIntoPHI()
448 if (isExact) in FoldPHIArgOpIntoPHI()
449 isExact = cast<PossiblyExactOperator>(I)->isExact(); in FoldPHIArgOpIntoPHI()
492 if (isExact) BinOp->setIsExact(); in FoldPHIArgOpIntoPHI()
HDInstCombineShifts.cpp600 ShiftOp->isExact()) { in FoldShiftByConstant()
619 NewLShr->setIsExact(I.isExact()); in FoldShiftByConstant()
638 NewAShr->setIsExact(I.isExact()); in FoldShiftByConstant()
651 ShiftOp->isExact()) { in FoldShiftByConstant()
741 if (Value *V = SimplifyLShrInst(I.getOperand(0), I.getOperand(1), I.isExact(), in visitLShr()
770 if (!I.isExact() && in visitLShr()
785 if (Value *V = SimplifyAShrInst(I.getOperand(0), I.getOperand(1), I.isExact(), in visitAShr()
815 if (!I.isExact() && in visitAShr()
HDInstCombineMulDivRem.cpp60 if (I->getOpcode() == Instruction::LShr && !I->isExact()) { in simplifyValueKnownNonZero()
317 if (SDiv->isExact()) { in visitMul()
821 BO->setIsExact(I.isExact()); in commonIDivTransforms()
849 BO->setIsExact(I.isExact()); in commonIDivTransforms()
959 if (I.isExact()) in foldUDivPow2Cst()
988 if (I.isExact()) in foldUDivShl()
1058 bool IsExact = I.isExact() && match(Op0, m_Exact(m_Value())); in visitUDiv()
1072 Builder->CreateUDiv(ZOp0->getOperand(0), ZOp1, "div", I.isExact()), in visitUDiv()
1128 if (I.isExact() && RHS->getValue().isNonNegative() && in visitSDiv()
1145 BO->setIsExact(I.isExact()); in visitSDiv()
[all …]
HDInstCombineSimplifyDemanded.cpp598 if (cast<LShrOperator>(I)->isExact()) in SimplifyDemandedUseBits()
643 if (cast<AShrOperator>(I)->isExact()) in SimplifyDemandedUseBits()
667 NewVal->setIsExact(cast<BinaryOperator>(I)->isExact()); in SimplifyDemandedUseBits()
858 if (cast<BinaryOperator>(Shr)->isExact()) in SimplifyShrShlDemandedBits()
HDInstCombineCompares.cpp833 ConstantInt *RangeSize = DivI->isExact() ? getOne(Prod) : DivRHS; in FoldICmpDivCst()
875 if (DivI->isExact()) in FoldICmpDivCst()
969 (!Shr->isExact() || ShAmtVal == TypeBits - 1)) in FoldICmpShrCst()
980 Builder->CreateSDiv(Shr->getOperand(0), DivCst, "", Shr->isExact()) : in FoldICmpShrCst()
981 Builder->CreateUDiv(Shr->getOperand(0), DivCst, "", Shr->isExact()); in FoldICmpShrCst()
1018 if (Shr->hasOneUse() && Shr->isExact()) in FoldICmpShrCst()
1654 if (ICI.isEquality() && BO->isExact() && BO->hasOneUse()) { in visitICmpInstWithInstAndIntCst()
3460 if (!BO0->isExact() || !BO1->isExact()) in visitICmpInst()
HDInstCombineSelect.cpp229 BO->setIsExact(TVI_BO->isExact()); in FoldSelectIntoOp()
264 BO->setIsExact(FVI_BO->isExact()); in FoldSelectIntoOp()
HDInstCombineVectorOps.cpp652 New->setIsExact(BO->isExact()); in BuildNew()
/NextBSD/contrib/llvm/lib/Transforms/Scalar/
HDBDCE.cpp179 if (cast<LShrOperator>(UserI)->isExact()) in determineLiveOperandBits()
198 if (cast<AShrOperator>(UserI)->isExact()) in determineLiveOperandBits()
HDIndVarSimplify.cpp249 bool isExact = false; in ConvertToSInt() local
253 &isExact) != APFloat::opOK || !isExact) in ConvertToSInt()
/NextBSD/contrib/llvm/lib/Analysis/
HDInstructionSimplify.cpp1350 bool isExact, const Query &Q, in SimplifyRightShift() argument
1362 return isExact ? Op0 : Constant::getNullValue(Op0->getType()); in SimplifyRightShift()
1365 if (isExact) { in SimplifyRightShift()
1407 static Value *SimplifyLShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyLShrInst() argument
1409 if (Value *V = SimplifyRightShift(Instruction::LShr, Op0, Op1, isExact, Q, in SimplifyLShrInst()
1421 Value *llvm::SimplifyLShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyLShrInst() argument
1426 return ::SimplifyLShrInst(Op0, Op1, isExact, Query(DL, TLI, DT, AC, CxtI), in SimplifyLShrInst()
1432 static Value *SimplifyAShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyAShrInst() argument
1434 if (Value *V = SimplifyRightShift(Instruction::AShr, Op0, Op1, isExact, Q, in SimplifyAShrInst()
1455 Value *llvm::SimplifyAShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyAShrInst() argument
[all …]
HDConstantFolding.cpp1376 bool isExact = false; in ConstantFoldConvertToInt() local
1381 &isExact); in ConstantFoldConvertToInt()
/NextBSD/contrib/llvm/lib/Support/
HDAPFloat.cpp2082 bool *isExact) const in convertToSignExtendedInteger()
2088 *isExact = false; in convertToSignExtendedInteger()
2099 *isExact = !sign; in convertToSignExtendedInteger()
2175 *isExact = true; in convertToSignExtendedInteger()
2193 roundingMode rounding_mode, bool *isExact) const in convertToInteger()
2198 isExact); in convertToInteger()
2226 roundingMode rounding_mode, bool *isExact) const in convertToInteger()
2231 parts.data(), bitWidth, result.isSigned(), rounding_mode, isExact); in convertToInteger()
/NextBSD/contrib/llvm/lib/IR/
HDConstants.cpp2291 Constant *ConstantExpr::getUDiv(Constant *C1, Constant *C2, bool isExact) { in getUDiv() argument
2293 isExact ? PossiblyExactOperator::IsExact : 0); in getUDiv()
2296 Constant *ConstantExpr::getSDiv(Constant *C1, Constant *C2, bool isExact) { in getSDiv() argument
2298 isExact ? PossiblyExactOperator::IsExact : 0); in getSDiv()
2336 Constant *ConstantExpr::getLShr(Constant *C1, Constant *C2, bool isExact) { in getLShr() argument
2338 isExact ? PossiblyExactOperator::IsExact : 0); in getLShr()
2341 Constant *ConstantExpr::getAShr(Constant *C1, Constant *C2, bool isExact) { in getAShr() argument
2343 isExact ? PossiblyExactOperator::IsExact : 0); in getAShr()
HDInstructions.cpp1879 bool BinaryOperator::isExact() const { in isExact() function in BinaryOperator
1880 return cast<PossiblyExactOperator>(this)->isExact(); in isExact()
1892 setIsExact(PE->isExact()); in copyIRFlags()
1906 setIsExact(isExact() & PE->isExact()); in andIRFlags()
/NextBSD/contrib/llvm/lib/CodeGen/SelectionDAG/
HDFastISel.cpp235 bool isExact; in materializeConstant() local
237 APFloat::rmTowardZero, &isExact); in materializeConstant()
238 if (isExact) { in materializeConstant()
433 cast<BinaryOperator>(I)->isExact() && isPowerOf2_64(Imm)) { in selectBinaryOp()
/NextBSD/contrib/llvm/tools/clang/lib/AST/
HDStmtProfile.cpp582 ID.AddBoolean(S->isExact()); in VisitFloatingLiteral()

12