/external/llvm/lib/Transforms/InstCombine/ |
D | InstCombineCompares.cpp | 236 CmpInst &ICI, ConstantInt *AndCst) { in FoldCmpLoadFromIndexedGlobal() argument 308 Constant *CompareRHS = cast<Constant>(ICI.getOperand(1)); in FoldCmpLoadFromIndexedGlobal() 321 Constant *C = ConstantFoldCompareInstOperands(ICI.getPredicate(), Elt, in FoldCmpLoadFromIndexedGlobal() 411 return replaceInstUsesWith(ICI, Builder->getFalse()); in FoldCmpLoadFromIndexedGlobal() 431 return replaceInstUsesWith(ICI, Builder->getTrue()); in FoldCmpLoadFromIndexedGlobal() 1059 Instruction *InstCombiner::FoldAllocaCmp(ICmpInst &ICI, AllocaInst *Alloca, in FoldAllocaCmp() argument 1061 assert(ICI.isEquality() && "Cannot fold non-equality comparison."); in FoldAllocaCmp() 1132 ICI, in FoldAllocaCmp() 1133 ConstantInt::get(CmpTy, !CmpInst::isTrueWhenEqual(ICI.getPredicate()))); in FoldAllocaCmp() 1137 Instruction *InstCombiner::FoldICmpAddOpCst(Instruction &ICI, in FoldICmpAddOpCst() argument [all …]
|
D | InstCombineCasts.cpp | 583 Instruction *InstCombiner::transformZExtICmp(ICmpInst *ICI, Instruction &CI, in transformZExtICmp() argument 588 if (ConstantInt *Op1C = dyn_cast<ConstantInt>(ICI->getOperand(1))) { in transformZExtICmp() 593 if ((ICI->getPredicate() == ICmpInst::ICMP_SLT && Op1CV == 0) || in transformZExtICmp() 594 (ICI->getPredicate() == ICmpInst::ICMP_SGT && Op1CV.isAllOnesValue())) { in transformZExtICmp() 595 if (!DoXform) return ICI; in transformZExtICmp() 597 Value *In = ICI->getOperand(0); in transformZExtICmp() 604 if (ICI->getPredicate() == ICmpInst::ICMP_SGT) { in transformZExtICmp() 622 ICI->isEquality()) { in transformZExtICmp() 626 computeKnownBits(ICI->getOperand(0), KnownZero, KnownOne, 0, &CI); in transformZExtICmp() 630 if (!DoXform) return ICI; in transformZExtICmp() [all …]
|
D | InstCombineInternal.h | 268 GlobalVariable *GV, CmpInst &ICI, 272 Instruction *visitICmpInstWithCastAndCast(ICmpInst &ICI); 273 Instruction *visitICmpInstWithInstAndIntCst(ICmpInst &ICI, Instruction *LHS, 275 Instruction *FoldICmpDivCst(ICmpInst &ICI, BinaryOperator *DivI, 277 Instruction *FoldICmpShrCst(ICmpInst &ICI, BinaryOperator *DivI, 283 Instruction *FoldICmpAddOpCst(Instruction &ICI, Value *X, ConstantInt *CI, 287 Instruction *FoldAllocaCmp(ICmpInst &ICI, AllocaInst *Alloca, Value *Other); 312 Instruction *visitSelectInstWithICmp(SelectInst &SI, ICmpInst *ICI); 388 Instruction *transformZExtICmp(ICmpInst *ICI, Instruction &CI, 390 Instruction *transformSExtICmp(ICmpInst *ICI, Instruction &CI);
|
D | InstCombineSelect.cpp | 370 static Value *foldSelectCttzCtlz(ICmpInst *ICI, Value *TrueVal, Value *FalseVal, in foldSelectCttzCtlz() argument 372 ICmpInst::Predicate Pred = ICI->getPredicate(); in foldSelectCttzCtlz() 373 Value *CmpLHS = ICI->getOperand(0); in foldSelectCttzCtlz() 374 Value *CmpRHS = ICI->getOperand(1); in foldSelectCttzCtlz() 377 if (!ICI->isEquality() || !match(CmpRHS, m_Zero())) in foldSelectCttzCtlz() 416 ICmpInst *ICI) { in visitSelectInstWithICmp() argument 418 ICmpInst::Predicate Pred = ICI->getPredicate(); in visitSelectInstWithICmp() 419 Value *CmpLHS = ICI->getOperand(0); in visitSelectInstWithICmp() 420 Value *CmpRHS = ICI->getOperand(1); in visitSelectInstWithICmp() 427 if (ICI->hasOneUse()) in visitSelectInstWithICmp() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Utils/ |
D | SimplifyIndVar.cpp | 544 ICmpInst *ICI = dyn_cast<ICmpInst>(U); in eliminateTrunc() local 545 if (!ICI) return false; in eliminateTrunc() 546 assert(L->contains(ICI->getParent()) && "LCSSA form broken?"); in eliminateTrunc() 547 if (!(ICI->getOperand(0) == TI && L->isLoopInvariant(ICI->getOperand(1))) && in eliminateTrunc() 548 !(ICI->getOperand(1) == TI && L->isLoopInvariant(ICI->getOperand(0)))) in eliminateTrunc() 551 if (ICI->isSigned() && !DoesSExtCollapse) in eliminateTrunc() 553 if (ICI->isUnsigned() && !DoesZExtCollapse) in eliminateTrunc() 556 ICmpUsers.push_back(ICI); in eliminateTrunc() 559 auto CanUseZExt = [&](ICmpInst *ICI) { in eliminateTrunc() argument 561 if (ICI->isUnsigned()) in eliminateTrunc() [all …]
|
D | SimplifyCFG.cpp | 206 bool tryToSimplifyUncondBranchWithICmpInIt(ICmpInst *ICI, 493 ICmpInst *ICI; in matchInstruction() local 495 if (!((ICI = dyn_cast<ICmpInst>(I)) && in matchInstruction() 506 if (ICI->getPredicate() == (isEQ ? ICmpInst::ICMP_EQ : ICmpInst::ICMP_NE)) { in matchInstruction() 547 if (match(ICI->getOperand(0), in matchInstruction() 570 if (match(ICI->getOperand(0), in matchInstruction() 587 if (!setValueOnce(ICI->getOperand(0))) in matchInstruction() 592 return ICI->getOperand(0); in matchInstruction() 597 ICI->getPredicate(), C->getValue()); in matchInstruction() 709 if (ICmpInst *ICI = dyn_cast<ICmpInst>(BI->getCondition())) { in isValueEqualityComparison() local [all …]
|
/external/llvm/lib/Transforms/Utils/ |
D | CmpInstAnalysis.cpp | 44 unsigned llvm::getICmpCode(const ICmpInst *ICI, bool InvertPred) { in getICmpCode() argument 45 ICmpInst::Predicate Pred = InvertPred ? ICI->getInversePredicate() in getICmpCode() 46 : ICI->getPredicate(); in getICmpCode()
|
/external/llvm/lib/Analysis/ |
D | LazyValueInfo.cpp | 848 static bool getValueFromFromCondition(Value *Val, ICmpInst *ICI, 869 if (ICmpInst *ICI = dyn_cast<ICmpInst>(C)) { in intersectAssumeBlockValueConstantRange() local 871 if (getValueFromFromCondition(Val, ICI, Result)) in intersectAssumeBlockValueConstantRange() 943 if (auto *ICI = dyn_cast<ICmpInst>(SI->getCondition())) { in solveBlockValueSelect() local 945 if (!getValueFromFromCondition(SI->getTrueValue(), ICI, in solveBlockValueSelect() 948 if (!getValueFromFromCondition(SI->getFalseValue(), ICI, in solveBlockValueSelect() 964 ICmpInst::Predicate Pred = ICI->getPredicate(); in solveBlockValueSelect() 965 Value *A = ICI->getOperand(0); in solveBlockValueSelect() 966 if (ConstantInt *CIBase = dyn_cast<ConstantInt>(ICI->getOperand(1))) { in solveBlockValueSelect() 1168 bool getValueFromFromCondition(Value *Val, ICmpInst *ICI, in getValueFromFromCondition() argument [all …]
|
/external/llvm-project/llvm/lib/Transforms/Scalar/ |
D | LoopPredication.cpp | 265 Optional<LoopICmp> parseLoopICmp(ICmpInst *ICI); 288 Optional<Value *> widenICmpRangeCheck(ICmpInst *ICI, SCEVExpander &Expander, 374 LoopPredication::parseLoopICmp(ICmpInst *ICI) { in parseLoopICmp() argument 375 auto Pred = ICI->getPredicate(); in parseLoopICmp() 376 auto *LHS = ICI->getOperand(0); in parseLoopICmp() 377 auto *RHS = ICI->getOperand(1); in parseLoopICmp() 675 Optional<Value *> LoopPredication::widenICmpRangeCheck(ICmpInst *ICI, in widenICmpRangeCheck() argument 679 LLVM_DEBUG(ICI->dump()); in widenICmpRangeCheck() 685 auto RangeCheck = parseLoopICmp(ICI); in widenICmpRangeCheck() 772 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Condition)) { in collectChecks() local [all …]
|
D | InductiveRangeCheckElimination.cpp | 150 static bool parseRangeCheckICmp(Loop *L, ICmpInst *ICI, ScalarEvolution &SE, 295 InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, in INITIALIZE_PASS_DEPENDENCY() 302 ICmpInst::Predicate Pred = ICI->getPredicate(); in INITIALIZE_PASS_DEPENDENCY() 303 Value *LHS = ICI->getOperand(0); in INITIALIZE_PASS_DEPENDENCY() 304 Value *RHS = ICI->getOperand(1); in INITIALIZE_PASS_DEPENDENCY() 371 ICmpInst *ICI = dyn_cast<ICmpInst>(Condition); in extractRangeChecksFromCond() local 372 if (!ICI) in extractRangeChecksFromCond() 377 if (!parseRangeCheckICmp(L, ICI, SE, Index, Length, IsSigned)) in extractRangeChecksFromCond() 788 ICmpInst *ICI = dyn_cast<ICmpInst>(LatchBr->getCondition()); in parseLoopStructure() local 789 if (!ICI || !isa<IntegerType>(ICI->getOperand(0)->getType())) { in parseLoopStructure() [all …]
|
/external/libcxx/test/std/containers/sequences/deque/deque.special/ |
D | copy.pass.cpp | 53 typedef input_iterator<CI> ICI; in testN() typedef 66 assert(std::copy(ICI(c2.cbegin()), ICI(c2.cend()), c1.begin()) == c1.end()); in testN()
|
/external/llvm-project/libcxx/test/std/containers/sequences/deque/deque.special/ |
D | copy.pass.cpp | 53 typedef input_iterator<CI> ICI; in testN() typedef 66 assert(std::copy(ICI(c2.cbegin()), ICI(c2.cend()), c1.begin()) == c1.end()); in testN()
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/ |
D | LoopPredication.cpp | 265 Optional<LoopICmp> parseLoopICmp(ICmpInst *ICI); 288 Optional<Value *> widenICmpRangeCheck(ICmpInst *ICI, SCEVExpander &Expander, 373 LoopPredication::parseLoopICmp(ICmpInst *ICI) { in parseLoopICmp() argument 374 auto Pred = ICI->getPredicate(); in parseLoopICmp() 375 auto *LHS = ICI->getOperand(0); in parseLoopICmp() 376 auto *RHS = ICI->getOperand(1); in parseLoopICmp() 673 Optional<Value *> LoopPredication::widenICmpRangeCheck(ICmpInst *ICI, in widenICmpRangeCheck() argument 677 LLVM_DEBUG(ICI->dump()); in widenICmpRangeCheck() 683 auto RangeCheck = parseLoopICmp(ICI); in widenICmpRangeCheck() 770 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Condition)) { in collectChecks() local [all …]
|
D | AlignmentFromAssumptions.cpp | 204 ICmpInst *ICI = dyn_cast<ICmpInst>(I->getArgOperand(0)); in extractAlignmentInfo() local 205 if (!ICI) in extractAlignmentInfo() 209 if (ICI->getPredicate() != ICmpInst::ICMP_EQ) in extractAlignmentInfo() 213 Value *CmpLHS = ICI->getOperand(0); in extractAlignmentInfo() 214 Value *CmpRHS = ICI->getOperand(1); in extractAlignmentInfo()
|
D | InductiveRangeCheckElimination.cpp | 148 static bool parseRangeCheckICmp(Loop *L, ICmpInst *ICI, ScalarEvolution &SE, 277 InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, in INITIALIZE_PASS_DEPENDENCY() 284 ICmpInst::Predicate Pred = ICI->getPredicate(); in INITIALIZE_PASS_DEPENDENCY() 285 Value *LHS = ICI->getOperand(0); in INITIALIZE_PASS_DEPENDENCY() 286 Value *RHS = ICI->getOperand(1); in INITIALIZE_PASS_DEPENDENCY() 353 ICmpInst *ICI = dyn_cast<ICmpInst>(Condition); in extractRangeChecksFromCond() local 354 if (!ICI) in extractRangeChecksFromCond() 359 if (!parseRangeCheckICmp(L, ICI, SE, Index, Length, IsSigned)) in extractRangeChecksFromCond() 783 ICmpInst *ICI = dyn_cast<ICmpInst>(LatchBr->getCondition()); in parseLoopStructure() local 784 if (!ICI || !isa<IntegerType>(ICI->getOperand(0)->getType())) { in parseLoopStructure() [all …]
|
/external/llvm-project/llvm/lib/Transforms/Utils/ |
D | SimplifyIndVar.cpp | 547 ICmpInst *ICI = dyn_cast<ICmpInst>(U); in eliminateTrunc() local 548 if (!ICI) return false; in eliminateTrunc() 549 assert(L->contains(ICI->getParent()) && "LCSSA form broken?"); in eliminateTrunc() 550 if (!(ICI->getOperand(0) == TI && L->isLoopInvariant(ICI->getOperand(1))) && in eliminateTrunc() 551 !(ICI->getOperand(1) == TI && L->isLoopInvariant(ICI->getOperand(0)))) in eliminateTrunc() 554 if (ICI->isSigned() && !DoesSExtCollapse) in eliminateTrunc() 556 if (ICI->isUnsigned() && !DoesZExtCollapse) in eliminateTrunc() 559 ICmpUsers.push_back(ICI); in eliminateTrunc() 562 auto CanUseZExt = [&](ICmpInst *ICI) { in eliminateTrunc() argument 564 if (ICI->isUnsigned()) in eliminateTrunc() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Analysis/ |
D | CmpInstAnalysis.cpp | 21 unsigned llvm::getICmpCode(const ICmpInst *ICI, bool InvertPred) { in getICmpCode() argument 22 ICmpInst::Predicate Pred = InvertPred ? ICI->getInversePredicate() in getICmpCode() 23 : ICI->getPredicate(); in getICmpCode()
|
/external/llvm-project/llvm/lib/Analysis/ |
D | CmpInstAnalysis.cpp | 21 unsigned llvm::getICmpCode(const ICmpInst *ICI, bool InvertPred) { in getICmpCode() argument 22 ICmpInst::Predicate Pred = InvertPred ? ICI->getInversePredicate() in getICmpCode() 23 : ICI->getPredicate(); in getICmpCode()
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/InstCombine/ |
D | InstCombineSelect.cpp | 680 static Value *canonicalizeSaturatedSubtract(const ICmpInst *ICI, in canonicalizeSaturatedSubtract() argument 684 ICmpInst::Predicate Pred = ICI->getPredicate(); in canonicalizeSaturatedSubtract() 696 Value *A = ICI->getOperand(0); in canonicalizeSaturatedSubtract() 697 Value *B = ICI->getOperand(1); in canonicalizeSaturatedSubtract() 724 if (IsNegative && !TrueVal->hasOneUse() && !ICI->hasOneUse()) in canonicalizeSaturatedSubtract() 811 static Instruction *foldSelectCtlzToCttz(ICmpInst *ICI, Value *TrueVal, in foldSelectCtlzToCttz() argument 815 if (!ICI->isEquality() || !match(ICI->getOperand(1), m_Zero())) in foldSelectCtlzToCttz() 818 if (ICI->getPredicate() == ICmpInst::ICMP_NE) in foldSelectCtlzToCttz() 828 Value *X = ICI->getOperand(0); in foldSelectCtlzToCttz() 850 static Value *foldSelectCttzCtlz(ICmpInst *ICI, Value *TrueVal, Value *FalseVal, in foldSelectCttzCtlz() argument [all …]
|
/external/llvm-project/libcxx/test/std/containers/sequences/deque/deque.cons/ |
D | assign_iter_iter.pass.cpp | 70 typedef input_iterator<CI> ICI; in testI() typedef 71 c1.assign(ICI(c2.begin()), ICI(c2.end())); in testI()
|
/external/libcxx/test/std/containers/sequences/deque/deque.cons/ |
D | assign_iter_iter.pass.cpp | 71 typedef input_iterator<CI> ICI; in testI() typedef 72 c1.assign(ICI(c2.begin()), ICI(c2.end())); in testI()
|
/external/llvm/lib/Transforms/Scalar/ |
D | InductiveRangeCheckElimination.cpp | 124 static RangeCheckKind parseRangeCheckICmp(Loop *L, ICmpInst *ICI, 254 InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, in parseRangeCheckICmp() argument 269 ICmpInst::Predicate Pred = ICI->getPredicate(); in parseRangeCheckICmp() 270 Value *LHS = ICI->getOperand(0); in parseRangeCheckICmp() 271 Value *RHS = ICI->getOperand(1); in parseRangeCheckICmp() 361 ICmpInst *ICI = dyn_cast<ICmpInst>(Condition); in extractRangeChecksFromCond() local 362 if (!ICI) in extractRangeChecksFromCond() 366 auto RCKind = parseRangeCheckICmp(L, ICI, SE, Index, Length); in extractRangeChecksFromCond() 656 ICmpInst *ICI = dyn_cast<ICmpInst>(LatchBr->getCondition()); in parseLoopStructure() local 657 if (!ICI || !isa<IntegerType>(ICI->getOperand(0)->getType())) { in parseLoopStructure() [all …]
|
D | AlignmentFromAssumptions.cpp | 206 ICmpInst *ICI = dyn_cast<ICmpInst>(I->getArgOperand(0)); in extractAlignmentInfo() local 207 if (!ICI) in extractAlignmentInfo() 211 if (ICI->getPredicate() != ICmpInst::ICMP_EQ) in extractAlignmentInfo() 215 Value *CmpLHS = ICI->getOperand(0); in extractAlignmentInfo() 216 Value *CmpRHS = ICI->getOperand(1); in extractAlignmentInfo()
|
/external/llvm-project/llvm/lib/Transforms/InstCombine/ |
D | InstCombineSelect.cpp | 692 static Value *canonicalizeSaturatedSubtract(const ICmpInst *ICI, in canonicalizeSaturatedSubtract() argument 696 ICmpInst::Predicate Pred = ICI->getPredicate(); in canonicalizeSaturatedSubtract() 708 Value *A = ICI->getOperand(0); in canonicalizeSaturatedSubtract() 709 Value *B = ICI->getOperand(1); in canonicalizeSaturatedSubtract() 736 if (IsNegative && !TrueVal->hasOneUse() && !ICI->hasOneUse()) in canonicalizeSaturatedSubtract() 825 static Instruction *foldSelectCtlzToCttz(ICmpInst *ICI, Value *TrueVal, in foldSelectCtlzToCttz() argument 829 if (!ICI->isEquality() || !match(ICI->getOperand(1), m_Zero())) in foldSelectCtlzToCttz() 832 if (ICI->getPredicate() == ICmpInst::ICMP_NE) in foldSelectCtlzToCttz() 842 Value *X = ICI->getOperand(0); in foldSelectCtlzToCttz() 864 static Value *foldSelectCttzCtlz(ICmpInst *ICI, Value *TrueVal, Value *FalseVal, in foldSelectCttzCtlz() argument [all …]
|
D | InstCombineInternal.h | 246 Instruction *transformZExtICmp(ICmpInst *ICI, ZExtInst &CI, 249 Instruction *transformSExtICmp(ICmpInst *ICI, Instruction &CI); 632 Instruction *foldAllocaCmp(ICmpInst &ICI, const AllocaInst *Alloca, 635 GlobalVariable *GV, CmpInst &ICI, 641 Instruction *foldICmpWithCastOp(ICmpInst &ICI); 694 Instruction *foldICmpIntrinsicWithConstant(ICmpInst &ICI, IntrinsicInst *II, 696 Instruction *foldICmpEqIntrinsicWithConstant(ICmpInst &ICI, IntrinsicInst *II, 706 Instruction *foldSelectInstWithICmp(SelectInst &SI, ICmpInst *ICI); 707 Instruction *foldSelectValueEquivalence(SelectInst &SI, ICmpInst &ICI);
|