Lines Matching refs:m_Value
115 m_ICmp(Pred2, m_Value(X), m_Value(Y)))) || in foldSelectWithBinaryOp()
660 if (match(Op1, m_Sub(m_Value(Y), m_Specific(Op0))) || in simplifyAddInst()
661 match(Op0, m_Sub(m_Value(Y), m_Specific(Op1)))) in simplifyAddInst()
673 match(Op0, m_Xor(m_Value(Y), m_SignMask()))) in simplifyAddInst()
831 if (MaxRecurse && match(Op0, m_Add(m_Value(X), m_Value(Y)))) { // (X + Y) - Z in simplifySubInst()
853 if (MaxRecurse && match(Op1, m_Add(m_Value(Y), m_Value(Z)))) { // X - (Y + Z) in simplifySubInst()
875 if (MaxRecurse && match(Op1, m_Sub(m_Value(X), m_Value(Y)))) // Z - (X - Y) in simplifySubInst()
886 if (MaxRecurse && match(Op0, m_Trunc(m_Value(X))) && in simplifySubInst()
887 match(Op1, m_Trunc(m_Value(Y)))) in simplifySubInst()
898 if (match(Op0, m_PtrToInt(m_Value(X))) && match(Op1, m_PtrToInt(m_Value(Y)))) in simplifySubInst()
952 m_Exact(m_IDiv(m_Value(X), m_Specific(Op1)))) || // (X / Y) * Y in simplifyMulInst()
953 match(Op1, m_Exact(m_IDiv(m_Value(X), m_Specific(Op0)))))) // Y * (X / Y) in simplifyMulInst()
1020 if (match(X, m_SRem(m_Value(), m_Specific(Y)))) in isDivZero()
1151 if (match(Op0, m_c_Mul(m_Value(X), m_Specific(Op1)))) { in simplifyDivRem()
1157 (IsSigned && match(X, m_SDiv(m_Value(), m_Specific(Op1)))) || in simplifyDivRem()
1158 (!IsSigned && match(X, m_UDiv(m_Value(), m_Specific(Op1))))) { in simplifyDivRem()
1211 ? match(Op0, m_NSWMul(m_Value(X), m_Specific(Op1))) in simplifyDiv()
1212 : match(Op0, m_NUWMul(m_Value(X), m_Specific(Op1))))) in simplifyDiv()
1231 match(Op0, m_NSWShl(m_Specific(Op1), m_Value()))) || in simplifyRem()
1233 match(Op0, m_NUWShl(m_Specific(Op1), m_Value())))) in simplifyRem()
1242 m_NSWMul(m_Value(), m_CheckedInt([C0](const APInt &C) { in simplifyRem()
1246 m_NUWMul(m_Value(), m_CheckedInt([C0](const APInt &C) { in simplifyRem()
1290 if (match(Op1, m_SExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1)) in simplifySRemInst()
1366 (match(Op1, m_SExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1))) in simplifyShift()
1461 match(Op0, m_Exact(m_Shr(m_Value(X), m_Specific(Op1))))) in simplifyShlInst()
1495 if (Q.IIQ.UseInstrInfo && match(Op0, m_NUWShl(m_Value(X), m_Specific(Op1)))) in simplifyLShrInst()
1506 match(Op0, m_c_Or(m_NUWShl(m_Value(X), m_APInt(ShLAmt)), m_Value(Y))) && in simplifyLShrInst()
1539 if (Q.IIQ.UseInstrInfo && match(Op0, m_NSWShl(m_Value(X), m_Specific(Op1)))) in simplifyAShrInst()
1563 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(Y), m_Zero())) || in simplifyUnsignedRangeCheck()
1571 if (match(Y, m_Sub(m_Value(A), m_Value(B)))) { in simplifyUnsignedRangeCheck()
1613 if (match(UnsignedICmp, m_ICmp(UnsignedPred, m_Value(X), m_Specific(Y))) && in simplifyUnsignedRangeCheck()
1617 m_ICmp(UnsignedPred, m_Specific(Y), m_Value(X))) && in simplifyUnsignedRangeCheck()
1709 if (!match(Op0, m_ICmp(Pred0, m_Add(m_Value(V), m_APInt(C0)), m_APInt(C1)))) in simplifyAndOfICmpsWithAdd()
1712 if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value()))) in simplifyAndOfICmpsWithAdd()
1756 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in simplifyAndOrOfICmpsWithCtpop()
1800 if (!match(Op0, m_ICmp(Pred0, m_Add(m_Value(V), m_APInt(C0)), m_APInt(C1)))) in simplifyOrOfICmpsWithAdd()
1803 if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value()))) in simplifyOrOfICmpsWithAdd()
1951 if (!match(Op0, m_ICmp(Pred, m_Value(A), m_Value(B))) || in simplifyAndOrWithICmpEq()
2001 if ((match(Op0, m_Add(m_Value(X), m_Constant(C1))) && in simplifyLogicOfAddSub()
2003 (match(Op1, m_Add(m_Value(X), m_Constant(C1))) && in simplifyLogicOfAddSub()
2026 if (match(Op0, m_c_Or(m_Specific(Op1), m_Value()))) in simplifyAndCommutative()
2031 if (match(Op0, m_c_Or(m_Value(X), m_Not(m_Value(Y)))) && in simplifyAndCommutative()
2055 if (match(Op0, m_Shl(m_Value(X), m_APInt(Shift1))) && in simplifyAndCommutative()
2111 if (match(Op0, m_Shl(m_Value(X), m_APInt(ShAmt))) && in simplifyAndInst()
2117 if (match(Op0, m_LShr(m_Value(X), m_APInt(ShAmt))) && in simplifyAndInst()
2126 match(Op0, m_Add(m_Value(Shift), m_AllOnes())) && in simplifyAndInst()
2156 if (match(Op1, m_Select(m_Specific(Op0), m_Value(), m_Zero()))) in simplifyAndInst()
2158 else if (match(Op0, m_Select(m_Specific(Op1), m_Value(), m_Zero()))) in simplifyAndInst()
2188 match(Op0, m_c_Or(m_CombineAnd(m_NUWShl(m_Value(X), m_APInt(ShAmt)), in simplifyAndInst()
2189 m_Value(XShifted)), in simplifyAndInst()
2190 m_Value(Y)))) { in simplifyAndInst()
2212 if (match(Op0, m_c_Xor(m_Value(X), in simplifyAndInst()
2214 m_c_Or(m_Deferred(X), m_Value(Y))))) && in simplifyAndInst()
2221 if (match(Op0, m_Xor(m_Value(A), m_APInt(C1))) && in simplifyAndInst()
2264 if (match(Y, m_Not(m_c_And(m_Specific(X), m_Value())))) in simplifyOrLogic()
2268 if (match(Y, m_c_And(m_Specific(X), m_Value()))) in simplifyOrLogic()
2275 if (match(X, m_Xor(m_Value(A), m_Value(B))) && in simplifyOrLogic()
2281 if (match(X, m_Not(m_Xor(m_Value(A), m_Value(B)))) && in simplifyOrLogic()
2289 if (match(X, m_c_And(m_Value(A), m_Not(m_Value(B)))) && in simplifyOrLogic()
2297 if (match(X, m_c_Xor(m_Not(m_Value(A)), m_Value(B))) && in simplifyOrLogic()
2305 if (match(X, m_c_Or(m_Not(m_Value(A)), m_Value(B))) && in simplifyOrLogic()
2314 if (match(X, m_c_And(m_CombineAnd(m_Value(NotA), m_Not(m_Value(A))), in simplifyOrLogic()
2315 m_Value(B))) && in simplifyOrLogic()
2321 if (match(X, m_c_LogicalAnd(m_CombineAnd(m_Value(NotA), m_Not(m_Value(A))), in simplifyOrLogic()
2322 m_Value(B))) && in simplifyOrLogic()
2329 if (match(X, m_CombineAnd(m_Not(m_Xor(m_Value(A), m_Value(B))), in simplifyOrLogic()
2330 m_Value(NotAB))) && in simplifyOrLogic()
2336 if (match(X, m_CombineAnd(m_Not(m_And(m_Value(A), m_Value(B))), in simplifyOrLogic()
2337 m_Value(NotAB))) && in simplifyOrLogic()
2379 if ((match(Op0, m_Shl(m_AllOnes(), m_Value(X))) && in simplifyOrInst()
2380 match(Op1, m_LShr(m_AllOnes(), m_Value(Y)))) || in simplifyOrInst()
2381 (match(Op1, m_Shl(m_AllOnes(), m_Value(X))) && in simplifyOrInst()
2382 match(Op0, m_LShr(m_AllOnes(), m_Value(Y))))) { in simplifyOrInst()
2397 m_Intrinsic<Intrinsic::fshl>(m_Value(X), m_Value(), m_Value(Y))) && in simplifyOrInst()
2401 m_Intrinsic<Intrinsic::fshl>(m_Value(X), m_Value(), m_Value(Y))) && in simplifyOrInst()
2408 m_Intrinsic<Intrinsic::fshr>(m_Value(), m_Value(X), m_Value(Y))) && in simplifyOrInst()
2412 m_Intrinsic<Intrinsic::fshr>(m_Value(), m_Value(X), m_Value(Y))) && in simplifyOrInst()
2447 if (match(Op1, m_Select(m_Specific(Op0), m_One(), m_Value()))) in simplifyOrInst()
2449 else if (match(Op0, m_Select(m_Specific(Op1), m_One(), m_Value()))) in simplifyOrInst()
2463 if (match(Op0, m_And(m_Value(A), m_APInt(C1))) && in simplifyOrInst()
2464 match(Op1, m_And(m_Value(B), m_APInt(C2)))) { in simplifyOrInst()
2472 match(A, m_c_Add(m_Specific(B), m_Value(N)))) { in simplifyOrInst()
2478 if (C1->isMask() && match(B, m_c_Add(m_Specific(A), m_Value(N)))) { in simplifyOrInst()
2493 if (match(Op0, m_Xor(m_Value(A), m_APInt(C1))) && in simplifyOrInst()
2558 if (match(X, m_c_And(m_Not(m_Value(A)), m_Value(B))) && in simplifyXorInst()
2566 if (match(X, m_c_Or(m_CombineAnd(m_Not(m_Value(A)), m_Value(NotA)), in simplifyXorInst()
2567 m_Value(B))) && in simplifyXorInst()
2883 if (match(V, m_Not(m_Value(X)))) in simplifyICmpOfBools()
3046 if (match(LHS, m_ElementWiseBitCast(m_UIToFP(m_Value(X))))) { in simplifyICmpWithConstant()
3072 ((match(LHS, m_NUWMul(m_Value(), m_APIntAllowPoison(MulC))) && in simplifyICmpWithConstant()
3074 (match(LHS, m_NSWMul(m_Value(), m_APIntAllowPoison(MulC))) && in simplifyICmpWithConstant()
3089 if (match(LBO, m_c_Or(m_Value(Y), m_Specific(RHS)))) { in simplifyICmpWithBinOpOnLHS()
3106 if (match(LBO, m_c_And(m_Value(), m_Specific(RHS)))) { in simplifyICmpWithBinOpOnLHS()
3114 if (match(LBO, m_URem(m_Value(), m_Specific(RHS)))) { in simplifyICmpWithBinOpOnLHS()
3144 if (match(LBO, m_URem(m_Specific(RHS), m_Value()))) { in simplifyICmpWithBinOpOnLHS()
3155 if (match(LBO, m_LShr(m_Specific(RHS), m_Value())) || in simplifyICmpWithBinOpOnLHS()
3156 match(LBO, m_UDiv(m_Specific(RHS), m_Value()))) { in simplifyICmpWithBinOpOnLHS()
3245 if (!match(RHS, m_NSWAdd(m_Value(), m_Value()))) in trySimplifyICmpWithAdds()
3247 if (!match(RHS, m_NSWAdd(m_Value(), m_Value()))) in trySimplifyICmpWithAdds()
3252 if (!match(LHS, m_Add(m_Value(X), m_APInt(C1))) || in trySimplifyICmpWithAdds()
3347 if (!CmpInst::isUnsigned(Pred) && match(LHS, m_Neg(m_ZExt(m_Value())))) { in simplifyICmpWithBinOp()
3369 if (match(LHS, m_Shl(m_Power2(), m_Value())) && in simplifyICmpWithBinOp()
3381 match(LHS, m_Shl(m_One(), m_Value())) || !C->isZero()) { in simplifyICmpWithBinOp()
3392 if (match(LHS, m_Shl(m_Power2(), m_Value())) && match(RHS, m_SignMask())) { in simplifyICmpWithBinOp()
3506 if (match(LHS, m_SMax(m_Value(A), m_Value(B))) && (A == RHS || B == RHS)) { in simplifyICmpWithMinMax()
3512 } else if (match(RHS, m_SMax(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3519 } else if (match(LHS, m_SMin(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3527 } else if (match(RHS, m_SMin(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3580 if (match(LHS, m_UMax(m_Value(A), m_Value(B))) && (A == RHS || B == RHS)) { in simplifyICmpWithMinMax()
3586 } else if (match(RHS, m_UMax(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3593 } else if (match(LHS, m_UMin(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3601 } else if (match(RHS, m_UMin(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3652 if (match(LHS, m_UMin(m_Value(), m_Value())) || in simplifyICmpWithMinMax()
3653 match(LHS, m_SMin(m_Value(), m_Value()))) { in simplifyICmpWithMinMax()
3659 if (match(LHS, m_SMax(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3660 match(RHS, m_SMin(m_Value(C), m_Value(D))) && in simplifyICmpWithMinMax()
3668 } else if (match(LHS, m_UMax(m_Value(A), m_Value(B))) && in simplifyICmpWithMinMax()
3669 match(RHS, m_UMin(m_Value(C), m_Value(D))) && in simplifyICmpWithMinMax()
4202 if ((match(LHS, m_Intrinsic<Intrinsic::minnum>(m_Value(), m_APFloat(C2))) && in simplifyFCmpInst()
4204 (match(LHS, m_Intrinsic<Intrinsic::maxnum>(m_Value(), m_APFloat(C2))) && in simplifyFCmpInst()
4645 if (!match(CondVal, m_ICmp(Pred, m_Value(CmpLHS), m_Value(CmpRHS)))) in simplifySelectWithICmpCond()
4677 if (match(CmpLHS, m_And(m_Value(X), m_APInt(Y)))) in simplifySelectWithICmpCond()
4684 auto isFsh = m_CombineOr(m_FShl(m_Value(X), m_Value(), m_Value(ShAmt)), in simplifySelectWithICmpCond()
4685 m_FShr(m_Value(), m_Value(X), m_Value(ShAmt))); in simplifySelectWithICmpCond()
4697 m_CombineOr(m_FShl(m_Value(X), m_Deferred(X), m_Value(ShAmt)), in simplifySelectWithICmpCond()
4698 m_FShr(m_Value(X), m_Deferred(X), m_Value(ShAmt))); in simplifySelectWithICmpCond()
4735 if (match(CmpLHS, m_Or(m_Value(X), m_Value(Y))) && in simplifySelectWithICmpCond()
4747 if (match(CmpLHS, m_And(m_Value(X), m_Value(Y))) && in simplifySelectWithICmpCond()
4840 if (match(Cond, m_c_LogicalOr(m_Specific(FalseVal), m_Value())) && in simplifySelectInst()
4847 if (match(Cond, m_Not(m_c_LogicalOr(m_Specific(TrueVal), m_Value())))) in simplifySelectInst()
4850 if (match(TrueVal, m_Not(m_c_LogicalOr(m_Specific(Cond), m_Value())))) in simplifySelectInst()
4854 if (match(Cond, m_c_LogicalOr(m_Specific(TrueVal), m_Value()))) in simplifySelectInst()
4857 if (match(TrueVal, m_c_LogicalOr(m_Specific(Cond), m_Value()))) in simplifySelectInst()
4862 if (match(Cond, m_c_LogicalOr(m_Value(X), m_Not(m_Value(Y)))) && in simplifySelectInst()
4865 if (match(TrueVal, m_c_LogicalOr(m_Value(X), m_Not(m_Value(Y)))) && in simplifySelectInst()
4873 if (match(Cond, m_Not(m_c_LogicalAnd(m_Specific(FalseVal), m_Value())))) in simplifySelectInst()
4876 if (match(FalseVal, m_Not(m_c_LogicalAnd(m_Specific(Cond), m_Value())))) in simplifySelectInst()
4880 if (match(Cond, m_c_LogicalAnd(m_Specific(FalseVal), m_Value()))) in simplifySelectInst()
4883 if (match(FalseVal, m_c_LogicalAnd(m_Specific(Cond), m_Value()))) in simplifySelectInst()
5045 m_Sub(m_PtrToInt(m_Value(P)), m_PtrToInt(m_Specific(Ptr)))) && in simplifyGEPInst()
5051 if (match(Indices[0], m_AShr(m_Sub(m_PtrToInt(m_Value(P)), in simplifyGEPInst()
5059 if (match(Indices[0], m_SDiv(m_Sub(m_PtrToInt(m_Value(P)), in simplifyGEPInst()
5355 match(Op, m_PtrAdd(m_Value(Ptr), in simplifyCastInst()
5356 m_Sub(m_Value(X), m_PtrToInt(m_Deferred(Ptr))))) && in simplifyCastInst()
5477 if (!Scalable && match(Op0, m_InsertElt(m_Value(), m_Constant(C), in simplifyShuffleVectorInst()
5554 if (match(Op, m_FNeg(m_Value(X)))) in simplifyFNegInst()
5707 (match(Op0, m_FSub(m_Value(X), m_Specific(Op1))) || in simplifyFAddInst()
5708 match(Op1, m_FSub(m_Value(X), m_Specific(Op0))))) in simplifyFAddInst()
5745 if (match(Op0, m_NegZeroFP()) && match(Op1, m_FNeg(m_Value(X)))) in simplifyFSubInst()
5752 (match(Op1, m_FSub(m_AnyZeroFP(), m_Value(X))) || in simplifyFSubInst()
5753 match(Op1, m_FNeg(m_Value(X))))) in simplifyFSubInst()
5776 (match(Op1, m_FSub(m_Specific(Op0), m_Value(X))) || in simplifyFSubInst()
5777 match(Op0, m_c_FAdd(m_Specific(Op1), m_Value(X))))) in simplifyFSubInst()
5823 if (Op0 == Op1 && match(Op0, m_Sqrt(m_Value(X))) && FMF.allowReassoc() && in simplifyFMAFMul()
5909 if (FMF.allowReassoc() && match(Op0, m_c_FMul(m_Value(X), m_Specific(Op1)))) in simplifyFDivInst()
6261 match(Op0, m_SIToFP(m_Value())) || match(Op0, m_UIToFP(m_Value()))) in simplifyUnaryIntrinsic()
6273 if (match(Op0, m_BSwap(m_Value(X)))) in simplifyUnaryIntrinsic()
6278 if (match(Op0, m_BitReverse(m_Value(X)))) in simplifyUnaryIntrinsic()
6297 match(Op0, m_Intrinsic<Intrinsic::log>(m_Value(X)))) in simplifyUnaryIntrinsic()
6303 match(Op0, m_Intrinsic<Intrinsic::log2>(m_Value(X)))) in simplifyUnaryIntrinsic()
6309 match(Op0, m_Intrinsic<Intrinsic::log10>(m_Value(X)))) in simplifyUnaryIntrinsic()
6315 match(Op0, m_Intrinsic<Intrinsic::exp>(m_Value(X)))) in simplifyUnaryIntrinsic()
6321 (match(Op0, m_Intrinsic<Intrinsic::exp2>(m_Value(X))) || in simplifyUnaryIntrinsic()
6323 m_Intrinsic<Intrinsic::pow>(m_SpecificFP(2.0), m_Value(X))))) in simplifyUnaryIntrinsic()
6330 (match(Op0, m_Intrinsic<Intrinsic::exp10>(m_Value(X))) || in simplifyUnaryIntrinsic()
6332 m_Intrinsic<Intrinsic::pow>(m_SpecificFP(10.0), m_Value(X))))) in simplifyUnaryIntrinsic()
6337 if (match(Op0, m_VecReverse(m_Value(X)))) in simplifyUnaryIntrinsic()
6345 if (match(Op0, m_ExtractValue<0>(m_Value(X)))) { in simplifyUnaryIntrinsic()
6346 if (match(X, m_Intrinsic<Intrinsic::frexp>(m_Value()))) in simplifyUnaryIntrinsic()
6364 if (!match(Op0, m_MaxOrMin(m_Value(X), m_Value(Y)))) in foldMinMaxSharedOp()
6439 if (match(Op0, m_Intrinsic<Intrinsic::abs>(m_Value(), m_Value()))) in simplifyBinaryIntrinsic()
6445 if (match(Op0, m_Shl(m_One(), m_Value(X)))) in simplifyBinaryIntrinsic()
6451 if (match(Op0, m_LShr(m_Negative(), m_Value(X)))) in simplifyBinaryIntrinsic()
6453 if (match(Op0, m_AShr(m_Negative(), m_Value()))) in simplifyBinaryIntrinsic()
6740 if (match(Op0, m_Intrinsic<Intrinsic::vector_insert>(m_Value(), m_Value(X), in simplifyBinaryIntrinsic()
6882 m_Intrinsic<Intrinsic::vector_extract>(m_Value(X), m_Zero())) && in simplifyIntrinsic()