| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/BPF/ |
| H A D | BPFCheckAndAdjustIR.cpp | 164 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 D | LoopBoundSplit.cpp | 33 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 D | IndVarSimplify.cpp | 694 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 D | LoopDeletion.cpp | 335 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 D | LICM.cpp | 2523 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 D | SpeculativeExecution.cpp | 246 case Instruction::ICmp: in ComputeSpeculationCost()
|
| H A D | CorrelatedValuePropagation.cpp | 345 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 D | Operations.cpp | 33 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 D | SimplifyIndVar.cpp | 201 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 D | HardwareLoops.cpp | 416 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 D | TypePromotion.cpp | 267 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 D | ExpandReductions.cpp | 49 return Instruction::ICmp; in getOpcode()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPULowerKernelAttributes.cpp | 227 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 D | WebAssemblyFastISel.cpp | 425 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 D | InstCombineCompares.cpp | 865 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 D | SystemZTDC.cpp | 331 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 D | SystemZTargetTransformInfo.cpp | 138 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 D | VPlanAnalysis.cpp | 60 case Instruction::ICmp: in inferScalarTypeForRecipe() 160 case Instruction::ICmp: in inferScalarTypeForRecipe()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | MVELaneInterleavingPass.cpp | 240 case Instruction::ICmp: in tryInterleave() 335 I->getOpcode() == Instruction::ICmp; in tryInterleave()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
| H A D | ControlHeightReduction.cpp | 1506 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 D | IVDescriptors.cpp | 801 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 D | CaptureTracking.cpp | 376 case Instruction::ICmp: { in DetermineUseCaptureKind()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/IR/ |
| H A D | ConstantsContext.h | 238 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 D | BasicTTIImpl.h | 1691 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 D | NVPTXGenericToNVVM.cpp | 239 case Instruction::ICmp: in remapConstantExpr()
|