Home
last modified time | relevance | path

Searched refs:Pred1 (Results 1 – 22 of 22) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DMergedLoadStoreMotion.cpp312 BasicBlock *Pred1 = *SI; in mergeStores() local
314 if (Pred0 == Pred1) in mergeStores()
320 auto InstsNoDbg = Pred1->instructionsWithoutDebug(); in mergeStores()
338 if (StoreInst *S1 = canSinkFromBlock(Pred1, S0)) { in mergeStores()
349 SinkBB = SplitBlockPredecessors(TailBB, {Pred0, Pred1}, ".sink.split"); in mergeStores()
H A DGuardWidening.cpp730 CmpPredicate Pred0, Pred1; in mergeChecks() local
737 m_ICmp(Pred1, m_Specific(LHS), m_ConstantInt(RHS1)))) { in mergeChecks()
742 ConstantRange::makeExactICmpRegion(Pred1, RHS1->getValue()); in mergeChecks()
H A DJumpThreading.cpp3059 BasicBlock *Pred1, *Pred2; in processGuards() local
3063 Pred1 = *PI++; in processGuards()
3069 if (Pred1 == Pred2) in processGuards()
3074 auto *Parent = Pred1->getSinglePredecessor(); in processGuards()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DBasicBlockUtils.cpp1666 BasicBlock *Pred1 = nullptr; in GetIfCondition() local
1672 Pred1 = SomePHI->getIncomingBlock(0); in GetIfCondition()
1678 Pred1 = *PI++; in GetIfCondition()
1688 BranchInst *Pred1Br = dyn_cast<BranchInst>(Pred1->getTerminator()); in GetIfCondition()
1703 std::swap(Pred1, Pred2); in GetIfCondition()
1718 IfTrue = Pred1; in GetIfCondition()
1723 IfFalse = Pred1; in GetIfCondition()
1736 BasicBlock *CommonPred = Pred1->getSinglePredecessor(); in GetIfCondition()
1745 if (BI->getSuccessor(0) == Pred1) { in GetIfCondition()
1746 IfTrue = Pred1; in GetIfCondition()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DMustExecute.cpp588 const BasicBlock *Pred1 = Worklist[1]; in findBackwardJoinPoint() local
590 const BasicBlock *Pred1UniquePred = Pred1->getUniquePredecessor(); in findBackwardJoinPoint()
595 } else if (Pred1 == Pred0UniquePred) { in findBackwardJoinPoint()
598 JoinBB = Pred1; in findBackwardJoinPoint()
H A DInstructionSimplify.cpp1657 CmpPredicate Pred0, Pred1; in simplifyAndOfICmpsWithAdd() local
1663 if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value()))) in simplifyAndOfICmpsWithAdd()
1677 if (Pred0 == ICmpInst::ICMP_ULT && Pred1 == ICmpInst::ICMP_SGT) in simplifyAndOfICmpsWithAdd()
1679 if (Pred0 == ICmpInst::ICMP_SLT && Pred1 == ICmpInst::ICMP_SGT && IsNSW) in simplifyAndOfICmpsWithAdd()
1683 if (Pred0 == ICmpInst::ICMP_ULE && Pred1 == ICmpInst::ICMP_SGT) in simplifyAndOfICmpsWithAdd()
1685 if (Pred0 == ICmpInst::ICMP_SLE && Pred1 == ICmpInst::ICMP_SGT && IsNSW) in simplifyAndOfICmpsWithAdd()
1691 if (Pred0 == ICmpInst::ICMP_ULT && Pred1 == ICmpInst::ICMP_UGT) in simplifyAndOfICmpsWithAdd()
1694 if (Pred0 == ICmpInst::ICMP_ULE && Pred1 == ICmpInst::ICMP_UGT) in simplifyAndOfICmpsWithAdd()
1704 CmpPredicate Pred0, Pred1; in simplifyAndOrOfICmpsWithCtpop() local
1709 !match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt())) || C->isZero()) in simplifyAndOrOfICmpsWithCtpop()
[all …]
H A DValueTracking.cpp8483 CmpPredicate Pred1, Pred2; in isKnownInversion() local
8484 if (!match(X, m_ICmp(Pred1, m_Value(A), m_Value(B))) || in isKnownInversion()
8489 if (Pred1.hasSameSign() != Pred2.hasSameSign()) in isKnownInversion()
8493 return Pred1 == ICmpInst::getInversePredicate(Pred2); in isKnownInversion()
8501 if (Pred1.hasSameSign() && RHSC1->isNonNegative() != RHSC2->isNonNegative()) in isKnownInversion()
8504 const auto CR1 = ConstantRange::makeExactICmpRegion(Pred1, *RHSC1); in isKnownInversion()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DInstructions.cpp3952 static bool isImpliedTrueByMatchingCmp(CmpPredicate Pred1, CmpPredicate Pred2) { in isImpliedTrueByMatchingCmp() argument
3955 if (CmpPredicate::getMatching(Pred1, Pred2)) in isImpliedTrueByMatchingCmp()
3958 if (Pred1.hasSameSign() && CmpInst::isSigned(Pred2)) in isImpliedTrueByMatchingCmp()
3959 Pred1 = ICmpInst::getFlippedSignednessPredicate(Pred1); in isImpliedTrueByMatchingCmp()
3960 else if (Pred2.hasSameSign() && CmpInst::isSigned(Pred1)) in isImpliedTrueByMatchingCmp()
3963 switch (Pred1) { in isImpliedTrueByMatchingCmp()
3982 static bool isImpliedFalseByMatchingCmp(CmpPredicate Pred1, in isImpliedFalseByMatchingCmp() argument
3984 return isImpliedTrueByMatchingCmp(Pred1, in isImpliedFalseByMatchingCmp()
3988 std::optional<bool> ICmpInst::isImpliedByMatchingCmp(CmpPredicate Pred1, in isImpliedByMatchingCmp() argument
3990 if (isImpliedTrueByMatchingCmp(Pred1, Pred2)) in isImpliedByMatchingCmp()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineAndOrXor.cpp733 ICmpInst::Predicate Pred1 = (Inverted ? Cmp1->getInversePredicate() : in simplifyRangeCheck() local
748 Pred1 = ICmpInst::getSwappedPredicate(Pred1); in simplifyRangeCheck()
755 switch (Pred1) { in simplifyRangeCheck()
939 CmpPredicate Pred0, Pred1; in foldIsPowerOf2OrZero() local
943 !match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt()))) in foldIsPowerOf2OrZero()
947 if (IsAnd && Pred0 == ICmpInst::ICMP_NE && Pred1 == ICmpInst::ICMP_NE) { in foldIsPowerOf2OrZero()
953 if (!IsAnd && Pred0 == ICmpInst::ICMP_EQ && Pred1 == ICmpInst::ICMP_EQ) { in foldIsPowerOf2OrZero()
1289 CmpPredicate Pred1; in foldAndOrOfICmpsWithConstEq() local
1290 if (!match(Cmp1, m_c_ICmp(Pred1, m_Value(Y), m_Specific(X)))) in foldAndOrOfICmpsWithConstEq()
1298 Value *SubstituteCmp = simplifyICmpInst(Pred1, Y, C, Q); in foldAndOrOfICmpsWithConstEq()
[all …]
H A DInstCombineSelect.cpp1556 CmpPredicate Pred1; in canonicalizeClampLike() local
1562 m_ICmp(Pred1, m_Specific(X), in canonicalizeClampLike()
1573 switch (Pred1) { in canonicalizeClampLike()
1594 Pred1 = ICmpInst::Predicate::ICMP_SLT; in canonicalizeClampLike()
1600 assert(Pred1 == ICmpInst::Predicate::ICMP_SLT && in canonicalizeClampLike()
H A DInstCombineCompares.cpp7069 CmpPredicate Pred1, Pred2; in foldICmpUsingBoolRange() local
7072 if (match(&I, m_c_ICmp(Pred1, m_Value(X), in foldICmpUsingBoolRange()
7076 ICmpInst::isEquality(Pred1) && ICmpInst::isEquality(Pred2)) { in foldICmpUsingBoolRange()
7081 Builder.CreateICmp(Pred1, X, Constant::getNullValue(X->getType())); in foldICmpUsingBoolRange()
7083 Pred1, X, ConstantInt::getSigned(X->getType(), IsSExt ? -1 : 1)); in foldICmpUsingBoolRange()
7085 Pred1 == ICmpInst::ICMP_EQ ? Instruction::Or : Instruction::And, in foldICmpUsingBoolRange()
7093 I, ConstantInt::getBool(I.getType(), Pred1 == ICmpInst::ICMP_NE)); in foldICmpUsingBoolRange()
7108 I, ConstantInt::getBool(I.getType(), Pred1 == ICmpInst::ICMP_NE)); in foldICmpUsingBoolRange()
7128 Instruction::ICmp, Pred1, X, in foldICmpUsingBoolRange()
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonInstrInfo.h236 bool SubsumesPredicate(ArrayRef<MachineOperand> Pred1,
H A DHexagonInstrInfo.cpp1727 bool HexagonInstrInfo::SubsumesPredicate(ArrayRef<MachineOperand> Pred1, in SubsumesPredicate() argument
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCInstrInfo.h648 bool SubsumesPredicate(ArrayRef<MachineOperand> Pred1,
H A DPPCInstrInfo.cpp2304 bool PPCInstrInfo::SubsumesPredicate(ArrayRef<MachineOperand> Pred1, in SubsumesPredicate() argument
2306 assert(Pred1.size() == 2 && "Invalid PPC first predicate"); in SubsumesPredicate()
2309 if (Pred1[1].getReg() == PPC::CTR8 || Pred1[1].getReg() == PPC::CTR) in SubsumesPredicate()
2315 if (Pred1[1].getReg() != Pred2[1].getReg()) in SubsumesPredicate()
2318 PPC::Predicate P1 = (PPC::Predicate) Pred1[0].getImm(); in SubsumesPredicate()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMBaseInstrInfo.h176 bool SubsumesPredicate(ArrayRef<MachineOperand> Pred1,
H A DARMBaseInstrInfo.cpp461 bool ARMBaseInstrInfo::SubsumesPredicate(ArrayRef<MachineOperand> Pred1, in SubsumesPredicate() argument
463 if (Pred1.size() > 2 || Pred2.size() > 2) in SubsumesPredicate()
466 ARMCC::CondCodes CC1 = (ARMCC::CondCodes)Pred1[0].getImm(); in SubsumesPredicate()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetInstrInfo.h1702 virtual bool SubsumesPredicate(ArrayRef<MachineOperand> Pred1, in SubsumesPredicate() argument
/freebsd/contrib/llvm-project/llvm/include/llvm/SandboxIR/
H A DInstruction.h2566 static std::optional<bool> isImpliedByMatchingCmp(CmpPredicate Pred1, in isImpliedByMatchingCmp() argument
2568 return llvm::ICmpInst::isImpliedByMatchingCmp(Pred1, Pred2); in isImpliedByMatchingCmp()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DCombinerHelper.cpp7358 CmpInst::Predicate Pred1 = Cmp1->getCond(); in tryFoldAndOrOrICmpsUsingRanges() local
7401 IsAnd ? ICmpInst::getInversePredicate(Pred1) : Pred1, C1); in tryFoldAndOrOrICmpsUsingRanges()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstructions.h1303 isImpliedByMatchingCmp(CmpPredicate Pred1, CmpPredicate Pred2);
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DSLPVectorizer.cpp24070 CmpInst::Predicate Pred1 = CI1->getPredicate(); in compareCmp() local
24072 CmpInst::Predicate SwapPred1 = CmpInst::getSwappedPredicate(Pred1); in compareCmp()
24074 CmpInst::Predicate BasePred1 = std::min(Pred1, SwapPred1); in compareCmp()
24081 bool CI1Preds = Pred1 == BasePred1; in compareCmp()