Home
last modified time | relevance | path

Searched refs:IsAnd (Results 1 – 13 of 13) sorted by relevance

/freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/
H A DOverflowInstAnalysis.cpp21 bool llvm::isCheckForZeroAndMulWithOverflow(Value *Op0, Value *Op1, bool IsAnd, in isCheckForZeroAndMulWithOverflow() argument
55 (IsAnd && Pred == ICmpInst::Predicate::ICMP_NE && in isCheckForZeroAndMulWithOverflow()
57 (!IsAnd && Pred == ICmpInst::Predicate::ICMP_EQ && in isCheckForZeroAndMulWithOverflow()
68 bool IsAnd) { in isCheckForZeroAndMulWithOverflow() argument
70 return isCheckForZeroAndMulWithOverflow(Op0, Op1, IsAnd, Y); in isCheckForZeroAndMulWithOverflow()
H A DInstructionSimplify.cpp1566 EqPred == ICmpInst::ICMP_EQ && IsAnd) in simplifyUnsignedRangeCheck()
1573 return IsAnd ? UnsignedICmp : ZeroICmp; in simplifyUnsignedRangeCheck()
1579 return IsAnd ? ZeroICmp : UnsignedICmp; in simplifyUnsignedRangeCheck()
1612 return IsAnd ? ZeroICmp : UnsignedICmp; in simplifyUnsignedRangeCheck()
1618 return IsAnd ? UnsignedICmp : ZeroICmp; in simplifyUnsignedRangeCheck()
1628 return IsAnd ? UnsignedICmp : ZeroICmp; in simplifyUnsignedRangeCheck()
1633 return IsAnd ? ZeroICmp : UnsignedICmp; in simplifyUnsignedRangeCheck()
1637 IsAnd) in simplifyUnsignedRangeCheck()
1642 !IsAnd) in simplifyUnsignedRangeCheck()
1681 return IsAnd ? Cmp1 : Cmp0; in simplifyAndOrOfICmpsWithConstants()
[all …]
H A DLazyValueInfo.cpp1280 bool IsAnd; in getValueFromCondition() local
1282 IsAnd = true; in getValueFromCondition()
1284 IsAnd = false; in getValueFromCondition()
1301 if (IsTrueDest ^ IsAnd) { in getValueFromCondition()
H A DValueTracking.cpp836 bool IsAnd = false; in getKnownBitsFromAndXorOr() local
843 IsAnd = true; in getKnownBitsFromAndXorOr()
892 if (IsAnd) in getKnownBitsFromAndXorOr()
H A DScalarEvolution.cpp8991 bool IsAnd = false; in computeExitLimitFromCondFromBinOp() local
8993 IsAnd = true; in computeExitLimitFromCondFromBinOp()
8995 IsAnd = false; in computeExitLimitFromCondFromBinOp()
9002 bool EitherMayExit = IsAnd ^ ExitIfTrue; in computeExitLimitFromCondFromBinOp()
9011 const Constant *NeutralElement = ConstantInt::get(ExitCond->getType(), IsAnd); in computeExitLimitFromCondFromBinOp()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DOverflowInstAnalysis.h38 bool isCheckForZeroAndMulWithOverflow(Value *Op0, Value *Op1, bool IsAnd,
40 bool isCheckForZeroAndMulWithOverflow(Value *Op0, Value *Op1, bool IsAnd);
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineAndOrXor.cpp461 if (!IsAnd) { in foldLogOpOfMaskedICmpsAsymmetric()
467 LHS, RHS, IsAnd, A, B, C, D, E, in foldLogOpOfMaskedICmpsAsymmetric()
473 RHS, LHS, IsAnd, A, D, E, B, C, in foldLogOpOfMaskedICmpsAsymmetric()
520 if (!IsAnd) { in foldLogOpOfMaskedICmps()
1057 IsAnd && GetKnownNonZeroAndOther(B, A)) in foldUnsignedUnderflowCheck()
1190 if ((IsAnd && Pred0 != ICmpInst::ICMP_EQ) || in foldAndOrOfICmpsWithConstEq()
1191 (!IsAnd && Pred0 != ICmpInst::ICMP_NE)) in foldAndOrOfICmpsWithConstEq()
1281 if (IsAnd) in foldAndOrOfICmpsUsingRanges()
1379 !IsAnd))) { in foldLogicOfFCmps()
3223 if (IsAnd && !IsLogical) in foldAndOrOfICmps()
[all …]
H A DInstCombineInternal.h403 bool IsAnd, bool IsLogical = false);
406 Value *foldEqOfParts(ICmpInst *Cmp0, ICmpInst *Cmp1, bool IsAnd);
409 bool IsAnd);
414 Value *foldLogicOfFCmps(FCmpInst *LHS, FCmpInst *RHS, bool IsAnd,
424 Instruction *CxtI, bool IsAnd,
442 bool IsAnd);
H A DInstCombineSelect.cpp2663 std::optional<bool> Res = isImpliedCondition(Op, CondVal, DL, IsAnd); in foldAndOrOfSelectUsingImpliedCond()
2671 if (IsAnd) in foldAndOrOfSelectUsingImpliedCond()
2682 if (IsAnd) in foldAndOrOfSelectUsingImpliedCond()
3109 bool IsAnd = match(FalseVal, m_Zero()) ? true : false; in foldSelectOfBools() local
3110 Value *Op1 = IsAnd ? TrueVal : FalseVal; in foldSelectOfBools()
3111 if (isCheckForZeroAndMulWithOverflow(CondVal, Op1, IsAnd, Y)) { in foldSelectOfBools()
3125 if (auto *V = foldAndOrOfICmps(ICmp0, ICmp1, SI, IsAnd, in foldSelectOfBools()
3817 auto FoldSelectWithAndOrCond = [&](bool IsAnd, Value *A, in visitSelectInst()
3821 return SelectInst::Create(A, IsAnd ? V : TrueVal, IsAnd ? FalseVal : V); in visitSelectInst()
3827 return SelectInst::Create(A, IsAnd ? V : TrueVal, in visitSelectInst()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DConstraintElimination.cpp1105 bool IsAnd = match(Cond, m_LogicalAnd()); in addInfoFor() local
1108 if (IsOr && IsAnd) in addInfoFor()
1109 IsAnd = false; in addInfoFor()
1136 if (IsAnd && match(Cur, m_LogicalAnd(m_Value(Op0), m_Value(Op1)))) { in addInfoFor()
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp598 SDValue foldLogicOfSetCCs(bool IsAnd, SDValue N0, SDValue N1,
5969 bool AndEqZero = IsAnd && CC1 == ISD::SETEQ && IsZero; in foldLogicOfSetCCs()
5971 bool AndGtNeg1 = IsAnd && CC1 == ISD::SETGT && IsNeg1; in foldLogicOfSetCCs()
5973 bool OrNeZero = !IsAnd && CC1 == ISD::SETNE && IsZero; in foldLogicOfSetCCs()
5975 bool OrLtZero = !IsAnd && CC1 == ISD::SETLT && IsZero; in foldLogicOfSetCCs()
5988 bool AndEqNeg1 = IsAnd && CC1 == ISD::SETEQ && IsNeg1; in foldLogicOfSetCCs()
5990 bool AndLtZero = IsAnd && CC1 == ISD::SETLT && IsZero; in foldLogicOfSetCCs()
5992 bool OrNeNeg1 = !IsAnd && CC1 == ISD::SETNE && IsNeg1; in foldLogicOfSetCCs()
5994 bool OrGtNeg1 = !IsAnd && CC1 == ISD::SETGT && IsNeg1; in foldLogicOfSetCCs()
6026 if ((IsAnd && CC1 == ISD::SETEQ) || (!IsAnd && CC1 == ISD::SETNE)) { in foldLogicOfSetCCs()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelLowering.cpp12605 bool IsAnd = N->getOpcode() == ISD::AND; in combineDeMorganOfBoolean() local
12620 if (!isOneConstant(N11) && !(IsAnd && isAllOnesConstant(N11))) in combineDeMorganOfBoolean()
12624 if (!(IsAnd && isAllOnesConstant(N01))) in combineDeMorganOfBoolean()
12641 unsigned Opc = IsAnd ? ISD::OR : ISD::AND; in combineDeMorganOfBoolean()
14378 bool IsAnd = Cond.getOpcode() == ISD::AND; in tryDemorganOfBooleanCondition() local
14379 if (!IsAnd && Cond.getOpcode() != ISD::OR) in tryDemorganOfBooleanCondition()
14398 if (!isOneConstant(Xor1) && !(IsAnd && isAllOnesConstant(Xor1))) in tryDemorganOfBooleanCondition()
14431 unsigned Opc = IsAnd ? ISD::OR : ISD::AND; in tryDemorganOfBooleanCondition()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.cpp12773 bool IsAnd = And.getOpcode() == ISD::AND; in tryLowerToSLI() local
12796 if (IsAnd) { in tryLowerToSLI()