/external/swiftshader/third_party/llvm-10.0/llvm/lib/Analysis/ |
D | CmpInstAnalysis.cpp | 21 unsigned llvm::getICmpCode(const ICmpInst *ICI, bool InvertPred) { in getICmpCode() 22 ICmpInst::Predicate Pred = InvertPred ? ICI->getInversePredicate() in getICmpCode() 26 case ICmpInst::ICMP_UGT: return 1; // 001 in getICmpCode() 27 case ICmpInst::ICMP_SGT: return 1; // 001 in getICmpCode() 28 case ICmpInst::ICMP_EQ: return 2; // 010 in getICmpCode() 29 case ICmpInst::ICMP_UGE: return 3; // 011 in getICmpCode() 30 case ICmpInst::ICMP_SGE: return 3; // 011 in getICmpCode() 31 case ICmpInst::ICMP_ULT: return 4; // 100 in getICmpCode() 32 case ICmpInst::ICMP_SLT: return 4; // 100 in getICmpCode() 33 case ICmpInst::ICMP_NE: return 5; // 101 in getICmpCode() [all …]
|
D | InstructionSimplify.cpp | 82 ExpectedPred = ICmpInst::ICMP_NE; in foldSelectWithBinaryOp() 84 ExpectedPred = ICmpInst::ICMP_EQ; in foldSelectWithBinaryOp() 989 static bool isICmpTrue(ICmpInst::Predicate Pred, Value *LHS, Value *RHS, in isICmpTrue() 1045 return isICmpTrue(ICmpInst::ICMP_ULT, X, Y, Q, MaxRecurse); in isDivZero() 1414 static Value *simplifyUnsignedRangeCheck(ICmpInst *ZeroICmp, in simplifyUnsignedRangeCheck() 1415 ICmpInst *UnsignedICmp, bool IsAnd, in simplifyUnsignedRangeCheck() 1419 ICmpInst::Predicate EqPred; in simplifyUnsignedRangeCheck() 1421 !ICmpInst::isEquality(EqPred)) in simplifyUnsignedRangeCheck() 1424 ICmpInst::Predicate UnsignedPred; in simplifyUnsignedRangeCheck() 1431 ICmpInst::isUnsigned(UnsignedPred)) { in simplifyUnsignedRangeCheck() [all …]
|
/external/llvm-project/llvm/lib/Analysis/ |
D | CmpInstAnalysis.cpp | 21 unsigned llvm::getICmpCode(const ICmpInst *ICI, bool InvertPred) { in getICmpCode() 22 ICmpInst::Predicate Pred = InvertPred ? ICI->getInversePredicate() in getICmpCode() 26 case ICmpInst::ICMP_UGT: return 1; // 001 in getICmpCode() 27 case ICmpInst::ICMP_SGT: return 1; // 001 in getICmpCode() 28 case ICmpInst::ICMP_EQ: return 2; // 010 in getICmpCode() 29 case ICmpInst::ICMP_UGE: return 3; // 011 in getICmpCode() 30 case ICmpInst::ICMP_SGE: return 3; // 011 in getICmpCode() 31 case ICmpInst::ICMP_ULT: return 4; // 100 in getICmpCode() 32 case ICmpInst::ICMP_SLT: return 4; // 100 in getICmpCode() 33 case ICmpInst::ICMP_NE: return 5; // 101 in getICmpCode() [all …]
|
D | InstructionSimplify.cpp | 82 ExpectedPred = ICmpInst::ICMP_NE; in foldSelectWithBinaryOp() 84 ExpectedPred = ICmpInst::ICMP_EQ; in foldSelectWithBinaryOp() 982 static bool isICmpTrue(ICmpInst::Predicate Pred, Value *LHS, Value *RHS, in isICmpTrue() 1038 return isICmpTrue(ICmpInst::ICMP_ULT, X, Y, Q, MaxRecurse); in isDivZero() 1409 static Value *simplifyUnsignedRangeCheck(ICmpInst *ZeroICmp, in simplifyUnsignedRangeCheck() 1410 ICmpInst *UnsignedICmp, bool IsAnd, in simplifyUnsignedRangeCheck() 1414 ICmpInst::Predicate EqPred; in simplifyUnsignedRangeCheck() 1416 !ICmpInst::isEquality(EqPred)) in simplifyUnsignedRangeCheck() 1419 ICmpInst::Predicate UnsignedPred; in simplifyUnsignedRangeCheck() 1426 ICmpInst::isUnsigned(UnsignedPred)) { in simplifyUnsignedRangeCheck() [all …]
|
/external/llvm/lib/Transforms/Utils/ |
D | CmpInstAnalysis.cpp | 44 unsigned llvm::getICmpCode(const ICmpInst *ICI, bool InvertPred) { in getICmpCode() 45 ICmpInst::Predicate Pred = InvertPred ? ICI->getInversePredicate() in getICmpCode() 49 case ICmpInst::ICMP_UGT: return 1; // 001 in getICmpCode() 50 case ICmpInst::ICMP_SGT: return 1; // 001 in getICmpCode() 51 case ICmpInst::ICMP_EQ: return 2; // 010 in getICmpCode() 52 case ICmpInst::ICMP_UGE: return 3; // 011 in getICmpCode() 53 case ICmpInst::ICMP_SGE: return 3; // 011 in getICmpCode() 54 case ICmpInst::ICMP_ULT: return 4; // 100 in getICmpCode() 55 case ICmpInst::ICMP_SLT: return 4; // 100 in getICmpCode() 56 case ICmpInst::ICMP_NE: return 5; // 101 in getICmpCode() [all …]
|
/external/llvm-project/llvm/lib/Transforms/InstCombine/ |
D | InstCombineCompares.cpp | 66 static bool hasBranchUse(ICmpInst &I) { in hasBranchUse() 77 static bool isSignTest(ICmpInst::Predicate &Pred, const APInt &C) { in isSignTest() 78 if (!ICmpInst::isSigned(Pred)) in isSignTest() 82 return ICmpInst::isRelational(Pred); in isSignTest() 85 if (Pred == ICmpInst::ICMP_SLT) { in isSignTest() 86 Pred = ICmpInst::ICMP_SLE; in isSignTest() 90 if (Pred == ICmpInst::ICMP_SGT) { in isSignTest() 91 Pred = ICmpInst::ICMP_SGE; in isSignTest() 332 return new ICmpInst(ICmpInst::ICMP_EQ, Idx, FirstTrueIdx); in foldCmpLoadFromIndexedGlobal() 352 return new ICmpInst(ICmpInst::ICMP_NE, Idx, FirstFalseIdx); in foldCmpLoadFromIndexedGlobal() [all …]
|
D | InstCombineInternal.h | 105 Value *simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, bool Inverted); 122 Instruction *visitICmpInst(ICmpInst &I); 182 bool replacedSelectWithOperand(SelectInst *SI, const ICmpInst *Icmp, 246 Instruction *transformZExtICmp(ICmpInst *ICI, ZExtInst &CI, 249 Instruction *transformSExtICmp(ICmpInst *ICI, Instruction &CI); 339 Value *foldAndOfICmps(ICmpInst *LHS, ICmpInst *RHS, BinaryOperator &And); 340 Value *foldOrOfICmps(ICmpInst *LHS, ICmpInst *RHS, BinaryOperator &Or); 341 Value *foldXorOfICmps(ICmpInst *LHS, ICmpInst *RHS, BinaryOperator &Xor); 348 Value *foldAndOrOfICmpsOfAndWithPow2(ICmpInst *LHS, ICmpInst *RHS, 631 ICmpInst::Predicate Cond, Instruction &I); [all …]
|
D | InstCombineAndOrXor.cpp | 59 ICmpInst::Predicate NewPred; in getNewICmpValue() 130 ICmpInst::Predicate Pred = Inside ? ICmpInst::ICMP_ULT : ICmpInst::ICMP_UGE; in insertRangeTest() 132 Pred = isSigned ? ICmpInst::getSignedPredicate(Pred) : Pred; in insertRangeTest() 187 ICmpInst::Predicate Pred) { in getMaskedICmpType() 191 bool IsEq = (Pred == ICmpInst::ICMP_EQ); in getMaskedICmpType() 268 Value *&D, Value *&E, ICmpInst *LHS, in getMaskedTypeForICmpPair() 269 ICmpInst *RHS, in getMaskedTypeForICmpPair() 270 ICmpInst::Predicate &PredL, in getMaskedTypeForICmpPair() 271 ICmpInst::Predicate &PredR) { in getMaskedTypeForICmpPair() 305 if (!ICmpInst::isEquality(PredL)) in getMaskedTypeForICmpPair() [all …]
|
D | InstCombineSelect.cpp | 70 if (ICmpInst::isEquality(Pred)) in foldSelectBinOpIdentity() 71 IsEq = Pred == ICmpInst::ICMP_EQ; in foldSelectBinOpIdentity() 124 static Value *foldSelectICmpAnd(SelectInst &Sel, ICmpInst *Cmp, in foldSelectICmpAnd() 139 ICmpInst::Predicate Pred = Cmp->getPredicate(); in foldSelectICmpAnd() 140 if (ICmpInst::isEquality(Pred)) { in foldSelectICmpAnd() 152 assert(ICmpInst::isEquality(Pred) && "Not equality test?"); in foldSelectICmpAnd() 181 if (Pred == ICmpInst::ICMP_EQ) { in foldSelectICmpAnd() 188 if (Pred == ICmpInst::ICMP_NE) { in foldSelectICmpAnd() 227 ShouldNotVal ^= Pred == ICmpInst::ICMP_NE; in foldSelectICmpAnd() 481 static Instruction *foldSelectICmpAndAnd(Type *SelType, const ICmpInst *Cmp, in foldSelectICmpAndAnd() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/InstCombine/ |
D | InstCombineCompares.cpp | 65 static bool hasBranchUse(ICmpInst &I) { in hasBranchUse() 76 static bool isSignTest(ICmpInst::Predicate &Pred, const APInt &C) { in isSignTest() 77 if (!ICmpInst::isSigned(Pred)) in isSignTest() 81 return ICmpInst::isRelational(Pred); in isSignTest() 84 if (Pred == ICmpInst::ICMP_SLT) { in isSignTest() 85 Pred = ICmpInst::ICMP_SLE; in isSignTest() 89 if (Pred == ICmpInst::ICMP_SGT) { in isSignTest() 90 Pred = ICmpInst::ICMP_SGE; in isSignTest() 331 return new ICmpInst(ICmpInst::ICMP_EQ, Idx, FirstTrueIdx); in foldCmpLoadFromIndexedGlobal() 351 return new ICmpInst(ICmpInst::ICMP_NE, Idx, FirstFalseIdx); in foldCmpLoadFromIndexedGlobal() [all …]
|
D | InstCombineInternal.h | 119 inline bool isSignBitCheck(ICmpInst::Predicate Pred, const APInt &RHS, in isSignBitCheck() 122 case ICmpInst::ICMP_SLT: // True if LHS s< 0 in isSignBitCheck() 125 case ICmpInst::ICMP_SLE: // True if LHS s<= -1 in isSignBitCheck() 128 case ICmpInst::ICMP_SGT: // True if LHS s> -1 in isSignBitCheck() 131 case ICmpInst::ICMP_SGE: // True if LHS s>= 0 in isSignBitCheck() 134 case ICmpInst::ICMP_UGT: in isSignBitCheck() 138 case ICmpInst::ICMP_UGE: in isSignBitCheck() 142 case ICmpInst::ICMP_ULT: in isSignBitCheck() 146 case ICmpInst::ICMP_ULE: in isSignBitCheck() 389 Value *simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, bool Inverted); [all …]
|
D | InstCombineAndOrXor.cpp | 57 ICmpInst::Predicate NewPred; in getNewICmpValue() 174 ICmpInst::Predicate Pred = Inside ? ICmpInst::ICMP_ULT : ICmpInst::ICMP_UGE; in insertRangeTest() 176 Pred = isSigned ? ICmpInst::getSignedPredicate(Pred) : Pred; in insertRangeTest() 231 ICmpInst::Predicate Pred) { in getMaskedICmpType() 235 bool IsEq = (Pred == ICmpInst::ICMP_EQ); in getMaskedICmpType() 312 Value *&D, Value *&E, ICmpInst *LHS, in getMaskedTypeForICmpPair() 313 ICmpInst *RHS, in getMaskedTypeForICmpPair() 314 ICmpInst::Predicate &PredL, in getMaskedTypeForICmpPair() 315 ICmpInst::Predicate &PredR) { in getMaskedTypeForICmpPair() 349 if (!ICmpInst::isEquality(PredL)) in getMaskedTypeForICmpPair() [all …]
|
D | InstCombineSelect.cpp | 68 if (ICmpInst::isEquality(Pred)) in foldSelectBinOpIdentity() 69 IsEq = Pred == ICmpInst::ICMP_EQ; in foldSelectBinOpIdentity() 123 static Value *foldSelectICmpAnd(SelectInst &Sel, ICmpInst *Cmp, in foldSelectICmpAnd() 138 ICmpInst::Predicate Pred = Cmp->getPredicate(); in foldSelectICmpAnd() 139 if (ICmpInst::isEquality(Pred)) { in foldSelectICmpAnd() 151 assert(ICmpInst::isEquality(Pred) && "Not equality test?"); in foldSelectICmpAnd() 180 if (Pred == ICmpInst::ICMP_EQ) { in foldSelectICmpAnd() 187 if (Pred == ICmpInst::ICMP_NE) { in foldSelectICmpAnd() 226 ShouldNotVal ^= Pred == ICmpInst::ICMP_NE; in foldSelectICmpAnd() 501 static Instruction *foldSelectICmpAndAnd(Type *SelType, const ICmpInst *Cmp, in foldSelectICmpAndAnd() [all …]
|
/external/llvm/lib/Transforms/InstCombine/ |
D | InstCombineCompares.cpp | 119 static bool isBranchOnSignBitCheck(ICmpInst &I, bool isSignBit) { in isBranchOnSignBitCheck() 129 static bool isSignBitCheck(ICmpInst::Predicate Pred, ConstantInt *RHS, in isSignBitCheck() 132 case ICmpInst::ICMP_SLT: // True if LHS s< 0 in isSignBitCheck() 135 case ICmpInst::ICMP_SLE: // True if LHS s<= RHS and RHS == -1 in isSignBitCheck() 138 case ICmpInst::ICMP_SGT: // True if LHS s> -1 in isSignBitCheck() 141 case ICmpInst::ICMP_UGT: in isSignBitCheck() 145 case ICmpInst::ICMP_UGE: in isSignBitCheck() 157 static bool isSignTest(ICmpInst::Predicate &Pred, const ConstantInt *RHS) { in isSignTest() 158 if (!ICmpInst::isSigned(Pred)) in isSignTest() 162 return ICmpInst::isRelational(Pred); in isSignTest() [all …]
|
D | InstCombineAndOrXor.cpp | 73 ICmpInst::Predicate NewPred; in getNewICmpValue() 293 ICmpInst::ICMP_SLE:ICmpInst::ICMP_ULE), Lo, Hi))->getZExtValue() && in InsertRangeTest() 302 ICmpInst::Predicate pred = (isSigned ? in InsertRangeTest() 303 ICmpInst::ICMP_SLT : ICmpInst::ICMP_ULT); in InsertRangeTest() 320 ICmpInst::Predicate pred = (isSigned ? in InsertRangeTest() 321 ICmpInst::ICMP_SGT : ICmpInst::ICMP_UGT); in InsertRangeTest() 443 ICmpInst::Predicate SCC) in getTypeOfMaskedICmp() 448 bool icmp_eq = (SCC == ICmpInst::ICMP_EQ); in getTypeOfMaskedICmp() 530 static bool decomposeBitTestICmp(const ICmpInst *I, ICmpInst::Predicate &Pred, in decomposeBitTestICmp() 539 case ICmpInst::ICMP_SLT: in decomposeBitTestICmp() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/IR/ |
D | ConstantFold.cpp | 1524 static ICmpInst::Predicate areGlobalsPotentiallyEqual(const GlobalValue *GV1, in areGlobalsPotentiallyEqual() 1544 return ICmpInst::ICMP_NE; in areGlobalsPotentiallyEqual() 1545 return ICmpInst::BAD_ICMP_PREDICATE; in areGlobalsPotentiallyEqual() 1560 static ICmpInst::Predicate evaluateICmpRelation(Constant *V1, Constant *V2, in evaluateICmpRelation() 1564 if (V1 == V2) return ICmpInst::ICMP_EQ; in evaluateICmpRelation() 1573 ICmpInst::Predicate pred = ICmpInst::ICMP_EQ; in evaluateICmpRelation() 1577 pred = isSigned ? ICmpInst::ICMP_SLT : ICmpInst::ICMP_ULT; in evaluateICmpRelation() 1581 pred = isSigned ? ICmpInst::ICMP_SGT : ICmpInst::ICMP_UGT; in evaluateICmpRelation() 1587 return ICmpInst::BAD_ICMP_PREDICATE; in evaluateICmpRelation() 1591 ICmpInst::Predicate SwappedRelation = in evaluateICmpRelation() [all …]
|
/external/llvm/lib/IR/ |
D | ConstantFold.cpp | 1395 static ICmpInst::Predicate areGlobalsPotentiallyEqual(const GlobalValue *GV1, in areGlobalsPotentiallyEqual() 1415 return ICmpInst::ICMP_NE; in areGlobalsPotentiallyEqual() 1416 return ICmpInst::BAD_ICMP_PREDICATE; in areGlobalsPotentiallyEqual() 1431 static ICmpInst::Predicate evaluateICmpRelation(Constant *V1, Constant *V2, in evaluateICmpRelation() 1435 if (V1 == V2) return ICmpInst::ICMP_EQ; in evaluateICmpRelation() 1444 ICmpInst::Predicate pred = ICmpInst::ICMP_EQ; in evaluateICmpRelation() 1448 pred = isSigned ? ICmpInst::ICMP_SLT : ICmpInst::ICMP_ULT; in evaluateICmpRelation() 1452 pred = isSigned ? ICmpInst::ICMP_SGT : ICmpInst::ICMP_UGT; in evaluateICmpRelation() 1458 return ICmpInst::BAD_ICMP_PREDICATE; in evaluateICmpRelation() 1462 ICmpInst::Predicate SwappedRelation = in evaluateICmpRelation() [all …]
|
/external/llvm-project/llvm/lib/IR/ |
D | ConstantFold.cpp | 1645 static ICmpInst::Predicate areGlobalsPotentiallyEqual(const GlobalValue *GV1, in areGlobalsPotentiallyEqual() 1665 return ICmpInst::ICMP_NE; in areGlobalsPotentiallyEqual() 1666 return ICmpInst::BAD_ICMP_PREDICATE; in areGlobalsPotentiallyEqual() 1681 static ICmpInst::Predicate evaluateICmpRelation(Constant *V1, Constant *V2, in evaluateICmpRelation() 1685 if (V1 == V2) return ICmpInst::ICMP_EQ; in evaluateICmpRelation() 1694 ICmpInst::Predicate pred = ICmpInst::ICMP_EQ; in evaluateICmpRelation() 1698 pred = isSigned ? ICmpInst::ICMP_SLT : ICmpInst::ICMP_ULT; in evaluateICmpRelation() 1702 pred = isSigned ? ICmpInst::ICMP_SGT : ICmpInst::ICMP_UGT; in evaluateICmpRelation() 1708 return ICmpInst::BAD_ICMP_PREDICATE; in evaluateICmpRelation() 1712 ICmpInst::Predicate SwappedRelation = in evaluateICmpRelation() [all …]
|
/external/llvm-project/llvm/lib/Target/BPF/ |
D | BPFAdjustOpt.cpp | 120 auto *Icmp1 = dyn_cast<ICmpInst>(I.getOperand(0)); in serializeICMPInBB() 123 auto *Icmp2 = dyn_cast<ICmpInst>(I.getOperand(1)); in serializeICMPInBB() 178 auto *Cond = dyn_cast<ICmpInst>(BI->getCondition()); in serializeICMPCrossBB() 188 Cond = dyn_cast<ICmpInst>(BI->getCondition()); in serializeICMPCrossBB() 197 if (Cond1Op == ICmpInst::ICMP_SGT || Cond1Op == ICmpInst::ICMP_SGE) { in serializeICMPCrossBB() 198 if (Cond2Op != ICmpInst::ICMP_SLT && Cond1Op != ICmpInst::ICMP_SLE) in serializeICMPCrossBB() 200 } else if (Cond1Op == ICmpInst::ICMP_SLT || Cond1Op == ICmpInst::ICMP_SLE) { in serializeICMPCrossBB() 201 if (Cond2Op != ICmpInst::ICMP_SGT && Cond1Op != ICmpInst::ICMP_SGE) in serializeICMPCrossBB() 255 if (auto *Icmp1 = dyn_cast<ICmpInst>(Inst)) { in avoidSpeculation()
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/ |
D | InductiveRangeCheckElimination.cpp | 148 static bool parseRangeCheckICmp(Loop *L, ICmpInst *ICI, ScalarEvolution &SE, 202 return SE.isKnownPredicate(ICmpInst::ICMP_SGE, Begin, End); in isEmpty() 204 return SE.isKnownPredicate(ICmpInst::ICMP_UGE, Begin, End); in isEmpty() 277 InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, in INITIALIZE_PASS_DEPENDENCY() 284 ICmpInst::Predicate Pred = ICI->getPredicate(); in INITIALIZE_PASS_DEPENDENCY() 292 case ICmpInst::ICMP_SLE: in INITIALIZE_PASS_DEPENDENCY() 295 case ICmpInst::ICMP_SGE: in INITIALIZE_PASS_DEPENDENCY() 303 case ICmpInst::ICMP_SLT: in INITIALIZE_PASS_DEPENDENCY() 306 case ICmpInst::ICMP_SGT: in INITIALIZE_PASS_DEPENDENCY() 320 case ICmpInst::ICMP_ULT: in INITIALIZE_PASS_DEPENDENCY() [all …]
|
D | LoopPredication.cpp | 239 ICmpInst::Predicate Pred; 242 LoopICmp(ICmpInst::Predicate Pred, const SCEVAddRecExpr *IV, in LoopICmp() 265 Optional<LoopICmp> parseLoopICmp(ICmpInst *ICI); 285 ICmpInst::Predicate Pred, const SCEV *LHS, 288 Optional<Value *> widenICmpRangeCheck(ICmpInst *ICI, SCEVExpander &Expander, 373 LoopPredication::parseLoopICmp(ICmpInst *ICI) { in parseLoopICmp() 389 Pred = ICmpInst::getSwappedPredicate(Pred); in parseLoopICmp() 401 ICmpInst::Predicate Pred, const SCEV *LHS, in expandCheck() 410 if (SE->isLoopEntryGuardedByCond(L, ICmpInst::getInversePredicate(Pred), in expandCheck() 596 ICmpInst::getFlippedStrictnessPredicate(LatchCheck.Pred); in widenICmpRangeCheckIncrementingLoop() [all …]
|
/external/llvm-project/llvm/unittests/IR/ |
D | PatternMatch.cpp | 77 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, 0)) in TEST_F() 80 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, 0)) in TEST_F() 83 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, 0)) in TEST_F() 87 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, 1)) in TEST_F() 90 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, 1)) in TEST_F() 93 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, 1)) in TEST_F() 97 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, -1)) in TEST_F() 100 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, -1)) in TEST_F() 103 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_EQ, APInt(BitWidth, -1)) in TEST_F() 116 m_SpecificInt_ICMP(ICmpInst::Predicate::ICMP_NE, APInt(BitWidth, 0)) in TEST_F() [all …]
|
/external/llvm-project/llvm/lib/Transforms/Scalar/ |
D | InductiveRangeCheckElimination.cpp | 150 static bool parseRangeCheckICmp(Loop *L, ICmpInst *ICI, ScalarEvolution &SE, 203 return SE.isKnownPredicate(ICmpInst::ICMP_SGE, Begin, End); in isEmpty() 205 return SE.isKnownPredicate(ICmpInst::ICMP_UGE, Begin, End); in isEmpty() 295 InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, in INITIALIZE_PASS_DEPENDENCY() 302 ICmpInst::Predicate Pred = ICI->getPredicate(); in INITIALIZE_PASS_DEPENDENCY() 310 case ICmpInst::ICMP_SLE: in INITIALIZE_PASS_DEPENDENCY() 313 case ICmpInst::ICMP_SGE: in INITIALIZE_PASS_DEPENDENCY() 321 case ICmpInst::ICMP_SLT: in INITIALIZE_PASS_DEPENDENCY() 324 case ICmpInst::ICMP_SGT: in INITIALIZE_PASS_DEPENDENCY() 338 case ICmpInst::ICMP_ULT: in INITIALIZE_PASS_DEPENDENCY() [all …]
|
D | LoopPredication.cpp | 239 ICmpInst::Predicate Pred; 242 LoopICmp(ICmpInst::Predicate Pred, const SCEVAddRecExpr *IV, in LoopICmp() 265 Optional<LoopICmp> parseLoopICmp(ICmpInst *ICI); 285 ICmpInst::Predicate Pred, const SCEV *LHS, 288 Optional<Value *> widenICmpRangeCheck(ICmpInst *ICI, SCEVExpander &Expander, 374 LoopPredication::parseLoopICmp(ICmpInst *ICI) { in parseLoopICmp() 390 Pred = ICmpInst::getSwappedPredicate(Pred); in parseLoopICmp() 402 ICmpInst::Predicate Pred, const SCEV *LHS, in expandCheck() 411 if (SE->isLoopEntryGuardedByCond(L, ICmpInst::getInversePredicate(Pred), in expandCheck() 598 ICmpInst::getFlippedStrictnessPredicate(LatchCheck.Pred); in widenICmpRangeCheckIncrementingLoop() [all …]
|
/external/llvm/lib/Analysis/ |
D | InstructionSimplify.cpp | 1459 static Value *simplifyUnsignedRangeCheck(ICmpInst *ZeroICmp, in simplifyUnsignedRangeCheck() 1460 ICmpInst *UnsignedICmp, bool IsAnd) { in simplifyUnsignedRangeCheck() 1463 ICmpInst::Predicate EqPred; in simplifyUnsignedRangeCheck() 1465 !ICmpInst::isEquality(EqPred)) in simplifyUnsignedRangeCheck() 1468 ICmpInst::Predicate UnsignedPred; in simplifyUnsignedRangeCheck() 1470 ICmpInst::isUnsigned(UnsignedPred)) in simplifyUnsignedRangeCheck() 1474 ICmpInst::isUnsigned(UnsignedPred)) in simplifyUnsignedRangeCheck() 1475 UnsignedPred = ICmpInst::getSwappedPredicate(UnsignedPred); in simplifyUnsignedRangeCheck() 1481 if (UnsignedPred == ICmpInst::ICMP_ULT && EqPred == ICmpInst::ICMP_NE) in simplifyUnsignedRangeCheck() 1486 if (UnsignedPred == ICmpInst::ICMP_UGE && !IsAnd) { in simplifyUnsignedRangeCheck() [all …]
|