Home
last modified time | relevance | path

Searched refs:ICmp (Results 1 – 25 of 92) sorted by relevance

1234

/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFCheckAndAdjustIR.cpp164 ICmp->insertBefore(Call); in removeCompareBuiltin()
166 Call->replaceAllUsesWith(ICmp); in removeCompareBuiltin()
173 ICmpInst *ICmp; member
181 : ICmp(ICmp), Other(Other), Predicate(Predicate), MinMax(nullptr), in MinMaxSinkInfo()
254 if (!ICmp) in sinkMinMaxInBB()
256 if (!ICmp->isRelational()) in sinkMinMaxInBB()
258 MinMaxSinkInfo First(ICmp, ICmp->getOperand(1), in sinkMinMaxInBB()
260 MinMaxSinkInfo Second(ICmp, ICmp->getOperand(0), ICmp->getPredicate()); in sinkMinMaxInBB()
271 ICmpInst *ICmp = Info.ICmp; in sinkMinMaxInBB() local
279 IRBuilder<> Builder(ICmp); in sinkMinMaxInBB()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopBoundSplit.cpp33 ICmpInst *ICmp = nullptr; member
51 static void analyzeICmp(ScalarEvolution &SE, ICmpInst *ICmp, in analyzeICmp() argument
53 Cond.ICmp = ICmp; in analyzeICmp()
54 if (match(ICmp, m_ICmp(Cond.Pred, m_Value(Cond.AddRecValue), in analyzeICmp()
83 const SCEV *ExitCount = SE.getExitCount(&L, Cond.ICmp->getParent()); in calculateUpperBound()
126 ICmpInst *ICmp, ConditionInfo &Cond, in hasProcessableCondition() argument
128 analyzeICmp(SE, ICmp, Cond, L); in hasProcessableCondition()
215 ICmpInst *ICmp = cast<ICmpInst>(ExitingBI->getCondition()); in canSplitLoopBound() local
264 ICmpInst *ICmp = cast<ICmpInst>(BI->getCondition()); in findSplitCandidate() local
265 if (!hasProcessableCondition(L, SE, ICmp, SplitCandidateCond, in findSplitCandidate()
[all …]
H A DIndVarSimplify.cpp694 if (!ICmp) in isLoopExitTestBasedOn()
698 return ICmp->getOperand(0) == V || ICmp->getOperand(1) == V; in isLoopExitTestBasedOn()
1257 Value *LHS = ICmp->getOperand(0); in createReplacement()
1258 Value *RHS = ICmp->getOperand(1); in createReplacement()
1434 if (!ICmp || !ICmp->hasOneUse()) in canonicalizeExitCondition()
1437 auto *LHS = ICmp->getOperand(0); in canonicalizeExitCondition()
1438 auto *RHS = ICmp->getOperand(1); in canonicalizeExitCondition()
1463 ICmp->setPredicate(ICmp->getUnsignedPredicate()); in canonicalizeExitCondition()
1480 if (!ICmp || !ICmp->hasOneUse() || !ICmp->isUnsigned()) in canonicalizeExitCondition()
1484 auto *LHS = ICmp->getOperand(0); in canonicalizeExitCondition()
[all …]
H A DLoopDeletion.cpp335 auto *ICmp = dyn_cast<ICmpInst>(Cond); in canProveExitOnFirstIteration() local
336 if (!ICmp || !ICmp->getType()->isIntegerTy()) { in canProveExitOnFirstIteration()
342 auto *KnownCondition = getValueOnFirstIteration(ICmp, FirstIterValue, SQ); in canProveExitOnFirstIteration()
343 if (KnownCondition == ICmp) { in canProveExitOnFirstIteration()
H A DLICM.cpp2523 Value *InvariantRHS, ICmpInst &ICmp, Loop &L, in hoistAdd() argument
2550 SimplifyQuery(DL, DT, AC, &ICmp)) == in hoistAdd()
2559 ICmp.setPredicate(Pred); in hoistAdd()
2560 ICmp.setOperand(0, VariantOp); in hoistAdd()
2561 ICmp.setOperand(1, NewCmpOp); in hoistAdd()
2570 Value *InvariantRHS, ICmpInst &ICmp, Loop &L, in hoistSub() argument
2601 SimplifyQuery SQ(DL, DT, AC, &ICmp); in hoistSub()
2622 ICmp.setPredicate(Pred); in hoistSub()
2623 ICmp.setOperand(0, VariantOp); in hoistSub()
2624 ICmp.setOperand(1, NewCmpOp); in hoistSub()
H A DSpeculativeExecution.cpp246 case Instruction::ICmp: in ComputeSpeculationCost()
H A DCorrelatedValuePropagation.cpp345 if (auto *ICmp = dyn_cast<ICmpInst>(Cmp)) in processCmp() local
346 if (processICmp(ICmp, LVI)) in processCmp()
1155 case Instruction::ICmp: in runImpl()
/freebsd-14.2/contrib/llvm-project/llvm/lib/FuzzMutate/
H A DOperations.cpp33 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_EQ)); in describeFuzzerIntOps()
34 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_NE)); in describeFuzzerIntOps()
35 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_UGT)); in describeFuzzerIntOps()
36 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_UGE)); in describeFuzzerIntOps()
37 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_ULT)); in describeFuzzerIntOps()
38 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_ULE)); in describeFuzzerIntOps()
39 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SGT)); in describeFuzzerIntOps()
40 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SGE)); in describeFuzzerIntOps()
41 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SLT)); in describeFuzzerIntOps()
42 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SLE)); in describeFuzzerIntOps()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DSimplifyIndVar.cpp201 if (IVOperand != ICmp->getOperand(0)) { in makeIVComparisonInvariant()
232 ICmp->setPredicate(InvariantPredicate); in makeIVComparisonInvariant()
233 ICmp->setOperand(0, NewLHS); in makeIVComparisonInvariant()
234 ICmp->setOperand(1, NewRHS); in makeIVComparisonInvariant()
245 if (IVOperand != ICmp->getOperand(0)) { in eliminateIVComparison()
261 for (auto *U : ICmp->users()) in eliminateIVComparison()
265 SE->forgetValue(ICmp); in eliminateIVComparison()
266 ICmp->replaceAllUsesWith(ConstantInt::getBool(ICmp->getContext(), *Ev)); in eliminateIVComparison()
267 DeadInsts.emplace_back(ICmp); in eliminateIVComparison()
1604 auto Pred = ICmp->getPredicate(); in widenWithVariantUse()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DHardwareLoops.cpp416 auto ICmp = cast<ICmpInst>(BI->getCondition()); in CanGenerateTest() local
417 LLVM_DEBUG(dbgs() << " - Found condition: " << *ICmp << "\n"); in CanGenerateTest()
418 if (!ICmp->isEquality()) in CanGenerateTest()
421 auto IsCompareZero = [](ICmpInst *ICmp, Value *Count, unsigned OpIdx) { in CanGenerateTest() argument
422 if (auto *Const = dyn_cast<ConstantInt>(ICmp->getOperand(OpIdx))) in CanGenerateTest()
423 return Const->isZero() && ICmp->getOperand(OpIdx ^ 1) == Count; in CanGenerateTest()
431 if (!IsCompareZero(ICmp, Count, 0) && !IsCompareZero(ICmp, Count, 1) && in CanGenerateTest()
432 !IsCompareZero(ICmp, CountBefZext, 0) && in CanGenerateTest()
433 !IsCompareZero(ICmp, CountBefZext, 1)) in CanGenerateTest()
436 unsigned SuccIdx = ICmp->getPredicate() == ICmpInst::ICMP_NE ? 0 : 1; in CanGenerateTest()
H A DTypePromotion.cpp267 if (auto *ICmp = dyn_cast<ICmpInst>(V)) in isSink() local
268 return ICmp->isSigned() || LessThanTypeSize(ICmp->getOperand(0)); in isSink()
498 (I->getOpcode() == Instruction::ICmp || i == 1) && in PromoteTree()
732 case Instruction::ICmp: in isSupportedValue()
975 } else if (auto *ICmp = dyn_cast<ICmpInst>(&I)) { in run() local
978 if (ICmp->isSigned()) in run()
981 LLVM_DEBUG(dbgs() << "IR Promotion: Searching from: " << *ICmp << "\n"); in run()
983 for (auto &Op : ICmp->operands()) { in run()
H A DExpandReductions.cpp49 return Instruction::ICmp; in getOpcode()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPULowerKernelAttributes.cpp227 for (User *ICmp : BlockCount->users()) { in processUse()
229 if (match(ICmp, m_ICmp(Pred, GroupIDIntrin, m_Specific(BlockCount)))) { in processUse()
232 ICmp->replaceAllUsesWith(llvm::ConstantInt::getTrue(ICmp->getType())); in processUse()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyFastISel.cpp425 if (const auto *ICmp = dyn_cast<ICmpInst>(V)) in getRegForI1Value() local
428 ICmp->getParent() == BB) { in getRegForI1Value()
429 Not = ICmp->isTrueWhenEqual(); in getRegForI1Value()
430 return getRegForValue(ICmp->getOperand(0)); in getRegForI1Value()
1027 const auto *ICmp = cast<ICmpInst>(I); in selectICmp() local
1029 bool I32 = getSimpleType(ICmp->getOperand(0)->getType()) != MVT::i64; in selectICmp()
1032 switch (ICmp->getPredicate()) { in selectICmp()
1071 unsigned LHS = getRegForPromotedValue(ICmp->getOperand(0), IsSigned); in selectICmp()
1075 unsigned RHS = getRegForPromotedValue(ICmp->getOperand(1), IsSigned); in selectICmp()
1083 updateValueMap(ICmp, ResultReg); in selectICmp()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCompares.cpp865 if (ICmp && ICmp->isEquality() && getUnderlyingObject(*U) == Alloca) { in foldAllocaCmp()
891 ICmp->getType(), ICmp->getPredicate() == ICmpInst::ICMP_NE); in foldAllocaCmp()
892 replaceInstUsesWith(*ICmp, Res); in foldAllocaCmp()
893 eraseInstFromFunction(*ICmp); in foldAllocaCmp()
5409 return ICmp; in foldICmpEquality()
5493 Value *Op0 = ICmp.getOperand(0), *Op1 = ICmp.getOperand(1); in foldICmpWithTrunc()
5559 bool IsSignedCmp = ICmp.isSigned(); in foldICmpWithZextOrSext()
5596 if (!ICmp.getOperand(0)->hasOneUse() && !ICmp.getOperand(1)->hasOneUse()) in foldICmpWithZextOrSext()
5611 if (ICmp.isEquality()) in foldICmpWithZextOrSext()
5632 if (ICmp.isEquality()) in foldICmpWithZextOrSext()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZTDC.cpp331 else if (I.getOpcode() == Instruction::ICmp) in runOnFunction()
374 Value *ICmp = IRB.CreateICmp(CmpInst::ICMP_NE, TDC, Zero32); in runOnFunction() local
375 I->replaceAllUsesWith(ICmp); in runOnFunction()
H A DSystemZTargetTransformInfo.cpp138 case Instruction::ICmp: in getIntImmCostInst()
970 case Instruction::ICmp: { in getCmpSelInstrCost()
996 if (Opcode == Instruction::ICmp || Opcode == Instruction::FCmp) { in getCmpSelInstrCost()
1104 case Instruction::ICmp: in isFoldableLoad()
1109 if (UserI->getOpcode() != Instruction::ICmp) { in isFoldableLoad()
1137 if (UserI->getOpcode() == Instruction::ICmp) in isFoldableLoad()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanAnalysis.cpp60 case Instruction::ICmp: in inferScalarTypeForRecipe()
160 case Instruction::ICmp: in inferScalarTypeForRecipe()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/ARM/
H A DMVELaneInterleavingPass.cpp240 case Instruction::ICmp: in tryInterleave()
335 I->getOpcode() == Instruction::ICmp; in tryInterleave()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DControlHeightReduction.cpp1506 static bool negateICmpIfUsedByBranchOrSelectOnly(ICmpInst *ICmp, in negateICmpIfUsedByBranchOrSelectOnly() argument
1509 for (User *U : ICmp->users()) { in negateICmpIfUsedByBranchOrSelectOnly()
1514 if (isa<SelectInst>(U) && cast<SelectInst>(U)->getCondition() == ICmp) in negateICmpIfUsedByBranchOrSelectOnly()
1518 for (User *U : ICmp->users()) { in negateICmpIfUsedByBranchOrSelectOnly()
1548 ICmp->setPredicate(CmpInst::getInversePredicate(ICmp->getPredicate())); in negateICmpIfUsedByBranchOrSelectOnly()
1962 auto *ICmp = dyn_cast<ICmpInst>(Cond); in addToMergedCondition() local
1963 if (!ICmp || in addToMergedCondition()
1964 !negateICmpIfUsedByBranchOrSelectOnly(ICmp, BranchOrSelect, Scope)) in addToMergedCondition()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/
H A DIVDescriptors.cpp801 case Instruction::ICmp: in isRecurrenceInstr()
1119 return Instruction::ICmp; in getOpcode()
1152 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) in getReductionOpChain()
1160 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) { in getReductionOpChain()
1172 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) { in getReductionOpChain()
H A DCaptureTracking.cpp376 case Instruction::ICmp: { in DetermineUseCaptureKind()
/freebsd-14.2/contrib/llvm-project/llvm/lib/IR/
H A DConstantsContext.h238 return CE->getOpcode() == Instruction::ICmp || in classof()
504 case Instruction::ICmp:
505 return new CompareConstantExpr(Ty, Instruction::ICmp, SubclassData,
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DBasicTTIImpl.h1691 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy, in getIntrinsicInstrCost()
1716 Cost += thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, ExpRetTy, RetTy, in getIntrinsicInstrCost()
2033 Cost += thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy, in getTypeBasedIntrinsicInstrCost()
2052 Cost += thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy, in getTypeBasedIntrinsicInstrCost()
2074 Cost += thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy, in getTypeBasedIntrinsicInstrCost()
2138 Instruction::ICmp, SumTy, OverflowTy, in getTypeBasedIntrinsicInstrCost()
2158 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, SumTy, OverflowTy, in getTypeBasedIntrinsicInstrCost()
2191 BinaryOperator::ICmp, MulTy, OverflowTy, CmpInst::ICMP_NE, CostKind); in getTypeBasedIntrinsicInstrCost()
2391 thisT()->getCmpSelInstrCost(Instruction::ICmp, ValTy, in getTreeReductionCost()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/NVPTX/
H A DNVPTXGenericToNVVM.cpp239 case Instruction::ICmp: in remapConstantExpr()

1234