Home
last modified time | relevance | path

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

12

/minix/external/bsd/llvm/dist/llvm/include/llvm/IR/
H A DConstantFolder.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);
H A DNoFolder.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)
H A DIRBuilder.h754 bool isExact = false) {
758 if (!isExact)
766 bool isExact = false) {
770 if (!isExact)
826 bool isExact = false) {
830 if (!isExact)
835 bool isExact = false) {
839 bool isExact = false) {
844 bool isExact = false) {
848 if (!isExact)
[all …]
H A DConstants.h854 static Constant *getUDiv(Constant *C1, Constant *C2, bool isExact = false);
855 static Constant *getSDiv(Constant *C1, Constant *C2, bool isExact = false);
865 static Constant *getLShr(Constant *C1, Constant *C2, bool isExact = false);
866 static Constant *getAShr(Constant *C1, Constant *C2, bool isExact = false);
H A DOperator.h142 bool isExact() const { in isExact() function
H A DInstrTypes.h349 bool isExact() const;
/minix/external/bsd/llvm/dist/llvm/include/llvm/Analysis/
H A DTargetFolder.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));
H A DInstructionSimplify.h167 Value *SimplifyLShrInst(Value *Op0, Value *Op1, bool isExact,
176 Value *SimplifyAShrInst(Value *Op0, Value *Op1, bool isExact,
/minix/external/bsd/llvm/dist/llvm/lib/Transforms/InstCombine/
H A DInstCombinePHI.cpp36 bool isNUW = false, isNSW = false, isExact = false; in FoldPHIArgBinOpIntoPHI() local
43 isExact = PEO->isExact(); in FoldPHIArgBinOpIntoPHI()
64 if (isExact) in FoldPHIArgBinOpIntoPHI()
65 isExact = cast<PossiblyExactOperator>(I)->isExact(); in FoldPHIArgBinOpIntoPHI()
127 if (isExact) NewBinOp->setIsExact(); in FoldPHIArgBinOpIntoPHI()
405 bool isNUW = false, isNSW = false, isExact = false; in FoldPHIArgOpIntoPHI() local
429 isExact = PEO->isExact(); in FoldPHIArgOpIntoPHI()
450 if (isExact) in FoldPHIArgOpIntoPHI()
451 isExact = cast<PossiblyExactOperator>(I)->isExact(); in FoldPHIArgOpIntoPHI()
494 if (isExact) BinOp->setIsExact(); in FoldPHIArgOpIntoPHI()
H A DInstCombineShifts.cpp597 ShiftOp->isExact()) { in FoldShiftByConstant()
616 NewLShr->setIsExact(I.isExact()); in FoldShiftByConstant()
635 NewAShr->setIsExact(I.isExact()); in FoldShiftByConstant()
648 ShiftOp->isExact()) { in FoldShiftByConstant()
738 if (Value *V = SimplifyLShrInst(I.getOperand(0), I.getOperand(1), I.isExact(), in visitLShr()
767 if (!I.isExact() && in visitLShr()
782 if (Value *V = SimplifyAShrInst(I.getOperand(0), I.getOperand(1), I.isExact(), in visitAShr()
812 if (!I.isExact() && in visitAShr()
H A DInstCombineMulDivRem.cpp60 if (I->getOpcode() == Instruction::LShr && !I->isExact()) { in simplifyValueKnownNonZero()
313 if (SDiv->isExact()) { in visitMul()
817 BO->setIsExact(I.isExact()); in commonIDivTransforms()
845 BO->setIsExact(I.isExact()); in commonIDivTransforms()
955 if (I.isExact()) in foldUDivPow2Cst()
984 if (I.isExact()) in foldUDivShl()
1054 bool IsExact = I.isExact() && match(Op0, m_Exact(m_Value())); in visitUDiv()
1124 if (I.isExact() && RHS->getValue().isNonNegative() && in visitSDiv()
1141 BO->setIsExact(I.isExact()); in visitSDiv()
1154 BO->setIsExact(I.isExact()); in visitSDiv()
[all …]
H A DInstCombineSimplifyDemanded.cpp686 if (cast<LShrOperator>(I)->isExact()) in SimplifyDemandedUseBits()
731 if (cast<AShrOperator>(I)->isExact()) in SimplifyDemandedUseBits()
755 NewVal->setIsExact(cast<BinaryOperator>(I)->isExact()); in SimplifyDemandedUseBits()
946 if (cast<BinaryOperator>(Shr)->isExact()) in SimplifyShrShlDemandedBits()
H A DInstCombineCompares.cpp842 ConstantInt *RangeSize = DivI->isExact() ? getOne(Prod) : DivRHS; in FoldICmpDivCst()
884 if (DivI->isExact()) in FoldICmpDivCst()
978 (!Shr->isExact() || ShAmtVal == TypeBits - 1)) in FoldICmpShrCst()
989 Builder->CreateSDiv(Shr->getOperand(0), DivCst, "", Shr->isExact()) : in FoldICmpShrCst()
990 Builder->CreateUDiv(Shr->getOperand(0), DivCst, "", Shr->isExact()); in FoldICmpShrCst()
1027 if (Shr->hasOneUse() && Shr->isExact()) in FoldICmpShrCst()
1663 if (ICI.isEquality() && BO->isExact() && BO->hasOneUse()) { in visitICmpInstWithInstAndIntCst()
3404 if (!BO0->isExact() || !BO1->isExact()) in visitICmpInst()
H A DInstCombineSelect.cpp262 BO->setIsExact(TVI_BO->isExact()); in FoldSelectIntoOp()
297 BO->setIsExact(FVI_BO->isExact()); in FoldSelectIntoOp()
H A DInstCombineVectorOps.cpp700 New->setIsExact(BO->isExact()); in BuildNew()
/minix/external/bsd/llvm/dist/llvm/lib/Analysis/
H A DInstructionSimplify.cpp1326 bool isExact, const Query &Q, in SimplifyRightShift() argument
1338 return isExact ? Op0 : Constant::getNullValue(Op0->getType()); in SimplifyRightShift()
1341 if (isExact) { in SimplifyRightShift()
1383 static Value *SimplifyLShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyLShrInst() argument
1385 if (Value *V = SimplifyRightShift(Instruction::LShr, Op0, Op1, isExact, Q, in SimplifyLShrInst()
1397 Value *llvm::SimplifyLShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyLShrInst() argument
1408 static Value *SimplifyAShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyAShrInst() argument
1431 Value *llvm::SimplifyAShrInst(Value *Op0, Value *Op1, bool isExact, in SimplifyAShrInst() argument
2306 if (!CI2->isZero() && cast<BinaryOperator>(LHS)->isExact()) in SimplifyICmpInst()
2320 if (!CI2->isZero() && cast<BinaryOperator>(LHS)->isExact()) in SimplifyICmpInst()
[all …]
H A DConstantFolding.cpp1389 bool isExact = false; in ConstantFoldConvertToInt() local
1394 &isExact); in ConstantFoldConvertToInt()
/minix/external/bsd/llvm/dist/llvm/unittests/Transforms/Utils/
H A DCloning.cpp149 EXPECT_FALSE(this->clone(SDiv)->isExact()); in TEST_F()
152 EXPECT_TRUE(this->clone(SDiv)->isExact()); in TEST_F()
/minix/external/bsd/llvm/dist/llvm/unittests/ADT/
H A DAPFloatTest.cpp952 bool isExact = false; in TEST() local
957 .convertToInteger(result, APFloat::rmTowardZero, &isExact)); in TEST()
958 EXPECT_TRUE(isExact); in TEST()
963 .convertToInteger(result, APFloat::rmTowardZero, &isExact)); in TEST()
964 EXPECT_FALSE(isExact); in TEST()
969 .convertToInteger(result, APFloat::rmTowardZero, &isExact)); in TEST()
970 EXPECT_FALSE(isExact); in TEST()
976 EXPECT_FALSE(isExact); in TEST()
983 EXPECT_TRUE(isExact); in TEST()
989 EXPECT_FALSE(isExact); in TEST()
[all …]
/minix/external/bsd/llvm/dist/llvm/lib/Support/
H A DAPFloat.cpp2079 bool *isExact) const in convertToSignExtendedInteger()
2085 *isExact = false; in convertToSignExtendedInteger()
2096 *isExact = !sign; in convertToSignExtendedInteger()
2172 *isExact = true; in convertToSignExtendedInteger()
2190 roundingMode rounding_mode, bool *isExact) const in convertToInteger()
2195 isExact); in convertToInteger()
2223 roundingMode rounding_mode, bool *isExact) const in convertToInteger()
2228 parts.data(), bitWidth, result.isSigned(), rounding_mode, isExact); in convertToInteger()
/minix/external/bsd/llvm/dist/llvm/lib/IR/
H A DConstants.cpp2258 Constant *ConstantExpr::getUDiv(Constant *C1, Constant *C2, bool isExact) { in getUDiv() argument
2260 isExact ? PossiblyExactOperator::IsExact : 0); in getUDiv()
2263 Constant *ConstantExpr::getSDiv(Constant *C1, Constant *C2, bool isExact) { in getSDiv() argument
2265 isExact ? PossiblyExactOperator::IsExact : 0); in getSDiv()
2303 Constant *ConstantExpr::getLShr(Constant *C1, Constant *C2, bool isExact) { in getLShr() argument
2305 isExact ? PossiblyExactOperator::IsExact : 0); in getLShr()
2308 Constant *ConstantExpr::getAShr(Constant *C1, Constant *C2, bool isExact) { in getAShr() argument
2310 isExact ? PossiblyExactOperator::IsExact : 0); in getAShr()
H A DInstructions.cpp2027 bool BinaryOperator::isExact() const { in isExact() function in BinaryOperator
2028 return cast<PossiblyExactOperator>(this)->isExact(); in isExact()
2040 setIsExact(PE->isExact()); in copyIRFlags()
2054 setIsExact(isExact() & PE->isExact()); in andIRFlags()
/minix/external/bsd/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
H A DFastISel.cpp233 bool isExact; in materializeConstant() local
235 APFloat::rmTowardZero, &isExact); in materializeConstant()
236 if (isExact) { in materializeConstant()
431 cast<BinaryOperator>(I)->isExact() && isPowerOf2_64(Imm)) { in selectBinaryOp()
/minix/external/bsd/llvm/dist/llvm/lib/Transforms/Scalar/
H A DIndVarSimplify.cpp228 bool isExact = false; in ConvertToSInt() local
232 &isExact) != APFloat::opOK || !isExact) in ConvertToSInt()
/minix/external/bsd/llvm/dist/clang/lib/AST/
H A DStmtProfile.cpp516 ID.AddBoolean(S->isExact()); in VisitFloatingLiteral()

12