Home
last modified time | relevance | path

Searched refs:ICI (Results 1 – 23 of 23) sorted by relevance

/external/llvm/lib/Transforms/InstCombine/
DInstCombineCompares.cpp229 CmpInst &ICI, ConstantInt *AndCst) { in FoldCmpLoadFromIndexedGlobal() argument
301 Constant *CompareRHS = cast<Constant>(ICI.getOperand(1)); in FoldCmpLoadFromIndexedGlobal()
314 Constant *C = ConstantFoldCompareInstOperands(ICI.getPredicate(), Elt, in FoldCmpLoadFromIndexedGlobal()
404 return ReplaceInstUsesWith(ICI, Builder->getFalse()); in FoldCmpLoadFromIndexedGlobal()
424 return ReplaceInstUsesWith(ICI, Builder->getTrue()); in FoldCmpLoadFromIndexedGlobal()
733 Instruction *InstCombiner::FoldAllocaCmp(ICmpInst &ICI, AllocaInst *Alloca, in FoldAllocaCmp() argument
735 assert(ICI.isEquality() && "Cannot fold non-equality comparison."); in FoldAllocaCmp()
806 ICI, in FoldAllocaCmp()
807 ConstantInt::get(CmpTy, !CmpInst::isTrueWhenEqual(ICI.getPredicate()))); in FoldAllocaCmp()
811 Instruction *InstCombiner::FoldICmpAddOpCst(Instruction &ICI, in FoldICmpAddOpCst() argument
[all …]
DInstCombineCasts.cpp583 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 …]
DInstCombineInternal.h265 GlobalVariable *GV, CmpInst &ICI,
269 Instruction *visitICmpInstWithCastAndCast(ICmpInst &ICI);
270 Instruction *visitICmpInstWithInstAndIntCst(ICmpInst &ICI, Instruction *LHS,
272 Instruction *FoldICmpDivCst(ICmpInst &ICI, BinaryOperator *DivI,
274 Instruction *FoldICmpShrCst(ICmpInst &ICI, BinaryOperator *DivI,
280 Instruction *FoldICmpAddOpCst(Instruction &ICI, Value *X, ConstantInt *CI,
284 Instruction *FoldAllocaCmp(ICmpInst &ICI, AllocaInst *Alloca, Value *Other);
309 Instruction *visitSelectInstWithICmp(SelectInst &SI, ICmpInst *ICI);
383 Instruction *transformZExtICmp(ICmpInst *ICI, Instruction &CI,
385 Instruction *transformSExtICmp(ICmpInst *ICI, Instruction &CI);
DInstCombineSelect.cpp359 static Value *foldSelectCttzCtlz(ICmpInst *ICI, Value *TrueVal, Value *FalseVal, in foldSelectCttzCtlz() argument
361 ICmpInst::Predicate Pred = ICI->getPredicate(); in foldSelectCttzCtlz()
362 Value *CmpLHS = ICI->getOperand(0); in foldSelectCttzCtlz()
363 Value *CmpRHS = ICI->getOperand(1); in foldSelectCttzCtlz()
366 if (!ICI->isEquality() || !match(CmpRHS, m_Zero())) in foldSelectCttzCtlz()
405 ICmpInst *ICI) { in visitSelectInstWithICmp() argument
407 ICmpInst::Predicate Pred = ICI->getPredicate(); in visitSelectInstWithICmp()
408 Value *CmpLHS = ICI->getOperand(0); in visitSelectInstWithICmp()
409 Value *CmpRHS = ICI->getOperand(1); in visitSelectInstWithICmp()
416 if (ICI->hasOneUse()) in visitSelectInstWithICmp()
[all …]
DInstCombineMulDivRem.cpp973 Value *ICI = IC.Builder->CreateICmpULT(Op0, cast<ConstantInt>(Op1)); in foldUDivNegCst() local
975 return SelectInst::Create(ICI, Constant::getNullValue(I.getType()), in foldUDivNegCst()
DInstructionCombining.cpp1882 ICmpInst *ICI = cast<ICmpInst>(I); in isAllocSiteRemovable() local
1884 if (!ICI->isEquality() || !isa<ConstantPointerNull>(ICI->getOperand(1))) in isAllocSiteRemovable()
/external/llvm/lib/Transforms/Utils/
DCmpInstAnalysis.cpp44 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()
DSimplifyCFG.cpp409 ICmpInst *ICI; in matchInstruction() local
411 if (!((ICI = dyn_cast<ICmpInst>(I)) && in matchInstruction()
422 if (ICI->getPredicate() == (isEQ ? ICmpInst::ICMP_EQ:ICmpInst::ICMP_NE)) { in matchInstruction()
423 if (match(ICI->getOperand(0), in matchInstruction()
440 if(!setValueOnce(ICI->getOperand(0))) in matchInstruction()
445 return ICI->getOperand(0); in matchInstruction()
450 ICI->getPredicate(), C->getValue()); in matchInstruction()
559 if (ICmpInst *ICI = dyn_cast<ICmpInst>(BI->getCondition())) { in isValueEqualityComparison() local
560 if (ICI->isEquality() && GetConstantInt(ICI->getOperand(1), DL)) in isValueEqualityComparison()
561 CV = ICI->getOperand(0); in isValueEqualityComparison()
[all …]
/external/libcxx/test/std/containers/sequences/deque/deque.cons/
Dassign_iter_iter.pass.cpp67 typedef input_iterator<CI> ICI; in testI() typedef
68 c1.assign(ICI(c2.begin()), ICI(c2.end())); in testI()
/external/llvm/lib/Analysis/
DLazyValueInfo.cpp778 static bool getValueFromFromCondition(Value *Val, ICmpInst *ICI,
800 if (ICmpInst *ICI = dyn_cast<ICmpInst>(C)) { in mergeAssumeBlockValueConstantRange() local
802 if (getValueFromFromCondition(Val, ICI, Result)) { in mergeAssumeBlockValueConstantRange()
896 bool getValueFromFromCondition(Value *Val, ICmpInst *ICI, in getValueFromFromCondition() argument
898 if (ICI && isa<Constant>(ICI->getOperand(1))) { in getValueFromFromCondition()
899 if (ICI->isEquality() && ICI->getOperand(0) == Val) { in getValueFromFromCondition()
902 if (isTrueDest == (ICI->getPredicate() == ICmpInst::ICMP_EQ)) in getValueFromFromCondition()
903 Result = LVILatticeVal::get(cast<Constant>(ICI->getOperand(1))); in getValueFromFromCondition()
905 Result = LVILatticeVal::getNot(cast<Constant>(ICI->getOperand(1))); in getValueFromFromCondition()
912 if (ICI->getPredicate() == ICmpInst::ICMP_ULT) in getValueFromFromCondition()
[all …]
DGlobalsModRef.cpp389 } else if (ICmpInst *ICI = dyn_cast<ICmpInst>(I)) { in AnalyzeUsesOfPointer() local
390 if (!isa<ConstantPointerNull>(ICI->getOperand(1))) in AnalyzeUsesOfPointer()
DScalarEvolution.cpp3997 auto *ICI = dyn_cast<ICmpInst>(Cond); in createNodeForSelectOrPHI() local
3998 if (!ICI) in createNodeForSelectOrPHI()
4001 Value *LHS = ICI->getOperand(0); in createNodeForSelectOrPHI()
4002 Value *RHS = ICI->getOperand(1); in createNodeForSelectOrPHI()
4004 switch (ICI->getPredicate()) { in createNodeForSelectOrPHI()
7604 ICmpInst *ICI = dyn_cast<ICmpInst>(FoundCondValue); in isImpliedCond() local
7605 if (!ICI) return false; in isImpliedCond()
7611 FoundPred = ICI->getInversePredicate(); in isImpliedCond()
7613 FoundPred = ICI->getPredicate(); in isImpliedCond()
7615 const SCEV *FoundLHS = getSCEV(ICI->getOperand(0)); in isImpliedCond()
[all …]
DInstructionSimplify.cpp3342 if (const auto *ICI = dyn_cast<ICmpInst>(CondVal)) { in SimplifySelectInst() local
3344 ICmpInst::Predicate Pred = ICI->getPredicate(); in SimplifySelectInst()
3345 Value *CmpLHS = ICI->getOperand(0); in SimplifySelectInst()
3346 Value *CmpRHS = ICI->getOperand(1); in SimplifySelectInst()
3394 if (ICI->hasOneUse()) { in SimplifySelectInst()
/external/libcxx/test/std/containers/sequences/deque/deque.special/
Dcopy.pass.cpp53 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/lib/Transforms/Scalar/
DAlignmentFromAssumptions.cpp217 ICmpInst *ICI = dyn_cast<ICmpInst>(I->getArgOperand(0)); in extractAlignmentInfo() local
218 if (!ICI) in extractAlignmentInfo()
222 if (ICI->getPredicate() != ICmpInst::ICMP_EQ) in extractAlignmentInfo()
226 Value *CmpLHS = ICI->getOperand(0); in extractAlignmentInfo()
227 Value *CmpRHS = ICI->getOperand(1); in extractAlignmentInfo()
DInductiveRangeCheckElimination.cpp125 static RangeCheckKind parseRangeCheckICmp(Loop *L, ICmpInst *ICI,
266 InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, in parseRangeCheckICmp() argument
281 ICmpInst::Predicate Pred = ICI->getPredicate(); in parseRangeCheckICmp()
282 Value *LHS = ICI->getOperand(0); in parseRangeCheckICmp()
283 Value *RHS = ICI->getOperand(1); in parseRangeCheckICmp()
371 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Condition)) { in parseRangeCheck() local
374 auto RCKind = parseRangeCheckICmp(L, ICI, SE, IndexVal, Length); in parseRangeCheck()
685 ICmpInst *ICI = dyn_cast<ICmpInst>(LatchBr->getCondition()); in parseLoopStructure() local
686 if (!ICI || !isa<IntegerType>(ICI->getOperand(0)->getType())) { in parseLoopStructure()
697 ICmpInst::Predicate Pred = ICI->getPredicate(); in parseLoopStructure()
[all …]
DScalarizer.cpp84 ICmpSplitter(ICmpInst &ici) : ICI(ici) {} in ICmpSplitter()
87 return Builder.CreateICmp(ICI.getPredicate(), Op0, Op1, Name); in operator ()()
89 ICmpInst &ICI; member
424 bool Scalarizer::visitICmpInst(ICmpInst &ICI) { in visitICmpInst() argument
425 return splitBinary(ICI, ICmpSplitter(ICI)); in visitICmpInst()
DLoopStrengthReduce.cpp3145 if (const ICmpInst *ICI = dyn_cast<ICmpInst>(UserInst)) { in CollectLoopInvariantFixupsAndFormulae() local
3147 Value *OtherOp = const_cast<Value *>(ICI->getOperand(OtherIdx)); in CollectLoopInvariantFixupsAndFormulae()
/external/llvm/include/llvm/Transforms/Utils/
DCmpInstAnalysis.h47 unsigned getICmpCode(const ICmpInst *ICI, bool InvertPred = false);
/external/llvm/lib/Transforms/ObjCARC/
DDependencyAnalysis.cpp96 if (const ICmpInst *ICI = dyn_cast<ICmpInst>(Inst)) { in CanUse() local
100 if (!IsPotentialRetainableObjPtr(ICI->getOperand(1), *PA.getAA())) in CanUse()
/external/libcxx/test/std/containers/sequences/deque/deque.modifiers/
Dinsert_iter_iter.pass.cpp170 typedef input_iterator<CI> ICI; in testI() typedef
172 CI i = c1.insert(c1.begin() + P, ICI(c2.begin()), ICI(c2.end())); in testI()
/external/llvm/lib/Transforms/IPO/
DGlobalOpt.cpp900 ICmpInst *ICI = dyn_cast<ICmpInst>(LoadUse.getUser()); in OptimizeGlobalAddressOfMalloc() local
901 if (!ICI) { in OptimizeGlobalAddressOfMalloc()
910 LI->isUnordered() ? (Instruction*)ICI : LI); in OptimizeGlobalAddressOfMalloc()
912 switch (ICI->getPredicate()) { in OptimizeGlobalAddressOfMalloc()
921 LV = BinaryOperator::CreateNot(LV, "notinit", ICI); in OptimizeGlobalAddressOfMalloc()
930 ICI->replaceAllUsesWith(LV); in OptimizeGlobalAddressOfMalloc()
931 ICI->eraseFromParent(); in OptimizeGlobalAddressOfMalloc()
1060 if (const ICmpInst *ICI = dyn_cast<ICmpInst>(UI)) { in LoadUsesSimpleEnoughForHeapSRA() local
1061 if (!isa<ConstantPointerNull>(ICI->getOperand(1))) in LoadUsesSimpleEnoughForHeapSRA()
/external/clang/lib/Sema/
DSemaDeclCXX.cpp9280 InheritingConstructorInfo ICI(*this, ClassDecl); in DeclareInheritingConstructors() local
9282 ICI.inheritAll(InheritedBases[I]); in DeclareInheritingConstructors()