/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | LoopPredication.cpp | 275 std::optional<LoopICmp> parseLoopICmp(ICmpInst *ICI); 299 std::optional<Value *> widenICmpRangeCheck(ICmpInst *ICI, 349 std::optional<LoopICmp> LoopPredication::parseLoopICmp(ICmpInst *ICI) { in runOnLoop() 350 auto Pred = ICI->getPredicate(); in runOnLoop() 351 auto *LHS = ICI->getOperand(0); in runOnLoop() 352 auto *RHS = ICI->getOperand(1); in runOnLoop() 650 /// If ICI can be widened to a loop invariant condition emits the loop in widenICmpRangeCheckDecrementingLoop() 654 LoopPredication::widenICmpRangeCheck(ICmpInst *ICI, SCEVExpander &Expander, in widenICmpRangeCheckDecrementingLoop() 657 LLVM_DEBUG(ICI->dump()); in widenICmpRangeCheckDecrementingLoop() 663 auto RangeCheck = parseLoopICmp(ICI); in widenICmpRangeCheckDecrementingLoop() 389 parseLoopICmp(ICmpInst * ICI) parseLoopICmp() argument 694 widenICmpRangeCheck(ICmpInst * ICI,SCEVExpander & Expander,Instruction * Guard) widenICmpRangeCheck() argument 790 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Condition)) { collectChecks() local 909 auto *ICI = dyn_cast<ICmpInst>(BI->getCondition()); parseLoopLatchICmp() local [all...] |
H A D | InductiveRangeCheckElimination.cpp | 152 static bool parseRangeCheckICmp(Loop *L, ICmpInst *ICI, ScalarEvolution &SE, 266 /// Parse a single ICmp instruction, `ICI`, into a range check. If `ICI` cannot 270 bool InductiveRangeCheck::parseRangeCheckICmp(Loop *L, ICmpInst *ICI, 278 ICmpInst::Predicate Pred = ICI->getPredicate(); in parseRangeCheckICmp() 279 Value *LHS = ICI->getOperand(0); in parseRangeCheckICmp() 280 Value *RHS = ICI->getOperand(1); in parseRangeCheckICmp() 502 ICmpInst *ICI = dyn_cast<ICmpInst>(Condition); in extractRangeChecksFromCond() 503 if (!ICI) in extractRangeChecksFromCond() 508 if (!parseRangeCheckICmp(L, ICI, S in extractRangeChecksFromCond() 275 parseRangeCheckICmp(Loop * L,ICmpInst * ICI,ScalarEvolution & SE,const SCEVAddRecExpr * & Index,const SCEV * & End) parseRangeCheckICmp() argument 504 ICmpInst *ICI = dyn_cast<ICmpInst>(Condition); extractRangeChecksFromCond() local 930 ICmpInst *ICI = dyn_cast<ICmpInst>(LatchBr->getCondition()); parseLoopStructure() local [all...] |
H A D | Scalarizer.cpp | 167 ICmpSplitter(ICmpInst &ici) : ICI(ici) {} in ICmpSplitter() 171 return Builder.CreateICmp(ICI.getPredicate(), Op0, Op1, Name); in operator ()() 174 ICmpInst &ICI; member 298 bool visitICmpInst(ICmpInst &ICI); 311 bool visitCallInst(CallInst &ICI); 795 bool ScalarizerVisitor::visitICmpInst(ICmpInst &ICI) { in visitICmpInst() argument 796 return splitBinary(ICI, ICmpSplitter(ICI)); in visitICmpInst()
|
H A D | LoopStrengthReduce.cpp | 3800 if (const ICmpInst *ICI = dyn_cast<ICmpInst>(UserInst)) { in CollectLoopInvariantFixupsAndFormulae() local 3802 Value *OtherOp = const_cast<Value *>(ICI->getOperand(OtherIdx)); in CollectLoopInvariantFixupsAndFormulae()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineSelect.cpp | 903 static Value *canonicalizeSaturatedSubtract(const ICmpInst *ICI, in canonicalizeSaturatedSubtract() argument 907 ICmpInst::Predicate Pred = ICI->getPredicate(); in canonicalizeSaturatedSubtract() 908 Value *A = ICI->getOperand(0); in canonicalizeSaturatedSubtract() 909 Value *B = ICI->getOperand(1); in canonicalizeSaturatedSubtract() 959 if (IsNegative && !TrueVal->hasOneUse() && !ICI->hasOneUse()) in canonicalizeSaturatedSubtract() 1091 static Instruction *foldSelectCtlzToCttz(ICmpInst *ICI, Value *TrueVal, in foldSelectCtlzToCttz() argument 1095 if (!ICI->isEquality() || !match(ICI->getOperand(1), m_Zero())) in foldSelectCtlzToCttz() 1098 if (ICI->getPredicate() == ICmpInst::ICMP_NE) in foldSelectCtlzToCttz() 1112 Value *X = ICI->getOperand(0); in foldSelectCtlzToCttz() 1134 static Value *foldSelectCttzCtlz(ICmpInst *ICI, Value *TrueVal, Value *FalseVal, in foldSelectCttzCtlz() argument [all …]
|
H A D | InstCombineInternal.h | 652 GlobalVariable *GV, CmpInst &ICI, 723 Instruction *foldICmpIntrinsicWithConstant(ICmpInst &ICI, IntrinsicInst *II, 725 Instruction *foldICmpEqIntrinsicWithConstant(ICmpInst &ICI, IntrinsicInst *II, 740 Instruction *foldSelectInstWithICmp(SelectInst &SI, ICmpInst *ICI); 741 Instruction *foldSelectValueEquivalence(SelectInst &SI, ICmpInst &ICI);
|
H A D | InstructionCombining.cpp | 3136 ICmpInst *ICI = cast<ICmpInst>(I); in isAllocSiteRemovable() local 3140 if (!ICI->isEquality()) in isAllocSiteRemovable() 3142 unsigned OtherIndex = (ICI->getOperand(0) == PI) ? 1 : 0; in isAllocSiteRemovable() 3143 if (!isNeverEqualToUnescapedAlloc(ICI->getOperand(OtherIndex), TLI, AI)) in isAllocSiteRemovable()
|
H A D | InstCombineCompares.cpp | 112 LoadInst *LI, GetElementPtrInst *GEP, GlobalVariable *GV, CmpInst &ICI, in foldCmpLoadFromIndexedGlobal() argument 194 Constant *CompareRHS = cast<Constant>(ICI.getOperand(1)); in foldCmpLoadFromIndexedGlobal() 215 Constant *C = ConstantFoldCompareInstOperands(ICI.getPredicate(), Elt, in foldCmpLoadFromIndexedGlobal() 328 return replaceInstUsesWith(ICI, Builder.getFalse()); in foldCmpLoadFromIndexedGlobal() 349 return replaceInstUsesWith(ICI, Builder.getTrue()); in foldCmpLoadFromIndexedGlobal()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | SimplifyIndVar.cpp | 521 ICmpInst *ICI = dyn_cast<ICmpInst>(U); in eliminateTrunc() local 522 if (!ICI) return false; in eliminateTrunc() 523 assert(L->contains(ICI->getParent()) && "LCSSA form broken?"); in eliminateTrunc() 524 if (!(ICI->getOperand(0) == TI && L->isLoopInvariant(ICI->getOperand(1))) && in eliminateTrunc() 525 !(ICI->getOperand(1) == TI && L->isLoopInvariant(ICI->getOperand(0)))) in eliminateTrunc() 528 if (ICI->isSigned() && !DoesSExtCollapse) in eliminateTrunc() 530 if (ICI->isUnsigned() && !DoesZExtCollapse) in eliminateTrunc() 533 ICmpUsers.push_back(ICI); in eliminateTrunc() 536 auto CanUseZExt = [&](ICmpInst *ICI) { in eliminateTrunc() argument 538 if (ICI->isUnsigned()) in eliminateTrunc() [all …]
|
H A D | LoopConstrainer.cpp | 161 ICmpInst *ICI = dyn_cast<ICmpInst>(LatchBr->getCondition()); in parseLoopStructure() local 162 if (!ICI || !isa<IntegerType>(ICI->getOperand(0)->getType())) { in parseLoopStructure() 176 ICmpInst::Predicate Pred = ICI->getPredicate(); in parseLoopStructure() 177 Value *LeftValue = ICI->getOperand(0); in parseLoopStructure() 181 Value *RightValue = ICI->getOperand(1); in parseLoopStructure() 241 if (ICI->isEquality() && !HasNoSignedWrap(IndVarBase)) { in parseLoopStructure()
|
H A D | SimplifyCFG.cpp | 271 bool tryToSimplifyUncondBranchWithICmpInIt(ICmpInst *ICI, 565 ICmpInst *ICI; in matchInstruction() local 567 if (!((ICI = dyn_cast<ICmpInst>(I)) && in matchInstruction() 578 if (ICI->getPredicate() == (isEQ ? ICmpInst::ICMP_EQ : ICmpInst::ICMP_NE)) { in matchInstruction() 619 if (match(ICI->getOperand(0), in matchInstruction() 642 if (match(ICI->getOperand(0), in matchInstruction() 659 if (!setValueOnce(ICI->getOperand(0))) in matchInstruction() 664 return ICI->getOperand(0); in matchInstruction() 669 ConstantRange::makeExactICmpRegion(ICI->getPredicate(), C->getValue()); in matchInstruction() 784 if (ICmpInst *ICI = dyn_cast<ICmpInst>(BI->getCondition())) { in isValueEqualityComparison() local [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/ |
H A D | DependencyAnalysis.cpp | 89 if (const ICmpInst *ICI = dyn_cast<ICmpInst>(Inst)) { in CanUse() local 93 if (!IsPotentialRetainableObjPtr(ICI->getOperand(1), *PA.getAA())) in CanUse()
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | LazyValueInfo.cpp | 451 getValueFromICmpCondition(Value *Val, ICmpInst *ICI, bool isTrueDest, 1161 Value *Val, ICmpInst *ICI, bool isTrueDest, bool UseBlockValue) { in getValueFromICmpCondition() argument 1162 Value *LHS = ICI->getOperand(0); in getValueFromICmpCondition() 1163 Value *RHS = ICI->getOperand(1); in getValueFromICmpCondition() 1167 isTrueDest ? ICI->getPredicate() : ICI->getInversePredicate(); in getValueFromICmpCondition() 1170 if (ICI->isEquality() && LHS == Val) { in getValueFromICmpCondition() 1185 return getValueFromSimpleICmpCondition(EdgePred, RHS, Offset, ICI, in getValueFromICmpCondition() 1190 return getValueFromSimpleICmpCondition(SwappedPred, LHS, Offset, ICI, in getValueFromICmpCondition() 1272 if (ICmpInst *ICI = dyn_cast<ICmpInst>(Cond)) in getValueFromCondition() local 1273 return getValueFromICmpCondition(Val, ICI, IsTrueDest, UseBlockValue); in getValueFromCondition()
|
H A D | GlobalsModRef.cpp | 391 } else if (ICmpInst *ICI = dyn_cast<ICmpInst>(I)) { in AnalyzeUsesOfPointer() local 392 if (!isa<ConstantPointerNull>(ICI->getOperand(1))) in AnalyzeUsesOfPointer()
|
H A D | ScalarEvolution.cpp | 6085 auto *ICI = Cond; in createNodeForSelectOrPHIInstWithICmpInstCond() local 6087 Value *LHS = ICI->getOperand(0); in createNodeForSelectOrPHIInstWithICmpInstCond() 6088 Value *RHS = ICI->getOperand(1); in createNodeForSelectOrPHIInstWithICmpInstCond() 6090 switch (ICI->getPredicate()) { in createNodeForSelectOrPHIInstWithICmpInstCond() 6104 bool Signed = ICI->isSigned(); in createNodeForSelectOrPHIInstWithICmpInstCond() 6258 if (auto *ICI = dyn_cast<ICmpInst>(Cond)) { in createNodeForSelectOrPHI() local 6260 createNodeForSelectOrPHIInstWithICmpInstCond(I->getType(), ICI, in createNodeForSelectOrPHI() 7605 auto *ICI = dyn_cast<ICmpInst>(U->getOperand(0)); in getOperandsToCreate() local 7606 if (!ICI) in getOperandsToCreate() 7608 Value *LHS = ICI->getOperand(0); in getOperandsToCreate() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
H A D | GlobalOpt.cpp | 972 ICmpInst *ICI = dyn_cast<ICmpInst>(LoadUse.getUser()); in OptimizeGlobalAddressOfAllocation() local 973 if (!ICI) { in OptimizeGlobalAddressOfAllocation() 984 switch (ICI->getPredicate()) { in OptimizeGlobalAddressOfAllocation() 994 LV = BinaryOperator::CreateNot(LV, "notinit", ICI->getIterator()); in OptimizeGlobalAddressOfAllocation() 1000 ICI->replaceAllUsesWith(LV); in OptimizeGlobalAddressOfAllocation() 1001 ICI->eraseFromParent(); in OptimizeGlobalAddressOfAllocation()
|
H A D | AttributorAttributes.cpp | 9739 static bool calculateICmpInst(const ICmpInst *ICI, const APInt &LHS, in calculateICmpInst() 9741 return ICmpInst::compare(LHS, RHS, ICI->getPredicate()); in calculateICmpInst() 9833 ChangeStatus updateWithICmpInst(Attributor &A, ICmpInst *ICI) { in updateWithICmpInst() 9835 Value *LHS = ICI->getOperand(0); in updateWithICmpInst() 9836 Value *RHS = ICI->getOperand(1); in updateWithICmpInst() 9855 bool CmpResult = calculateICmpInst(ICI, Zero, R); in updateWithICmpInst() 9863 bool CmpResult = calculateICmpInst(ICI, L, Zero); in updateWithICmpInst() 9872 bool CmpResult = calculateICmpInst(ICI, L, R); in updateWithICmpInst() 10030 if (auto *ICI = dyn_cast<ICmpInst>(I)) in updateImpl() local 10031 return updateWithICmpInst(A, ICI); in updateImpl()
|
/freebsd/contrib/llvm-project/clang/lib/Sema/ |
H A D | SemaDeclCXX.cpp | 7480 Sema::InheritedConstructorInfo *ICI); 7501 Sema::InheritedConstructorInfo ICI( in computeImplicitExceptionSpec() local 7504 S, Loc, CD, CXXSpecialMemberKind::DefaultConstructor, &ICI); in computeImplicitExceptionSpec() 9151 Sema::InheritedConstructorInfo *ICI; member 9157 Sema::InheritedConstructorInfo *ICI) in SpecialMemberVisitor() 9158 : S(S), MD(MD), CSM(CSM), ICI(ICI) { in SpecialMemberVisitor() 9200 if (!ICI) in lookupInheritedCtor() 9205 if (auto *MD = ICI->findConstructorForBase(Class, BaseCtor).first) in lookupInheritedCtor() 9273 Sema::InheritedConstructorInfo *ICI, boo in SpecialMemberDeletionInfo() 9616 ShouldDeleteSpecialMember(CXXMethodDecl * MD,CXXSpecialMemberKind CSM,InheritedConstructorInfo * ICI,bool Diagnose) ShouldDeleteSpecialMember() argument 13698 ComputeDefaultedSpecialMemberExceptionSpec(Sema & S,SourceLocation Loc,CXXMethodDecl * MD,CXXSpecialMemberKind CSM,Sema::InheritedConstructorInfo * ICI) ComputeDefaultedSpecialMemberExceptionSpec() argument 13971 InheritedConstructorInfo ICI(*this, Loc, Shadow); findInheritingConstructor() local 14028 InheritedConstructorInfo ICI(*this, Ctor->getLocation(), NoteDeletedInheritingConstructor() local 14067 InheritedConstructorInfo ICI(*this, CurrentLocation, Shadow); DefineInheritingConstructor() local [all...] |
/freebsd/contrib/llvm-project/clang/include/clang/Sema/ |
H A D | Sema.h | 5083 InheritedConstructorInfo *ICI = nullptr,
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86ISelLowering.cpp | 30814 ICmpInst *ICI = dyn_cast<ICmpInst>(AI->user_back()); in emitCmpArithAtomicRMWIntrinsic() local 30815 if (!ICI) { in emitCmpArithAtomicRMWIntrinsic() 30818 ICI = cast<ICmpInst>(TempI->user_back()); in emitCmpArithAtomicRMWIntrinsic() 30821 ICmpInst::Predicate Pred = ICI->getPredicate(); in emitCmpArithAtomicRMWIntrinsic() 30865 ICI->replaceAllUsesWith(Result); in emitCmpArithAtomicRMWIntrinsic() 30866 ICI->eraseFromParent(); in emitCmpArithAtomicRMWIntrinsic()
|