Lines Matching refs:IsSigned
926 static bool MatchRem(Value *E, Value *&Op, APInt &C, bool &IsSigned) { in MatchRem() argument
928 IsSigned = false; in MatchRem()
930 IsSigned = true; in MatchRem()
948 static bool MatchDiv(Value *E, Value *&Op, APInt &C, bool IsSigned) { in MatchDiv() argument
950 if (IsSigned && match(E, m_SDiv(m_Value(Op), m_APInt(AI)))) { in MatchDiv()
954 if (!IsSigned) { in MatchDiv()
969 static bool MulWillOverflow(APInt &C0, APInt &C1, bool IsSigned) { in MulWillOverflow() argument
971 if (IsSigned) in MulWillOverflow()
984 bool IsSigned; in SimplifyAddWithRemainder() local
986 if (((MatchRem(LHS, X, C0, IsSigned) && MatchMul(RHS, MulOpV, MulOpC)) || in SimplifyAddWithRemainder()
987 (MatchRem(RHS, X, C0, IsSigned) && MatchMul(LHS, MulOpV, MulOpC))) && in SimplifyAddWithRemainder()
994 IsSigned == Rem2IsSigned) { in SimplifyAddWithRemainder()
998 if (MatchDiv(RemOpV, DivOpV, DivOpC, IsSigned) && X == DivOpV && in SimplifyAddWithRemainder()
999 C0 == DivOpC && !MulWillOverflow(C0, C1, IsSigned)) { in SimplifyAddWithRemainder()
1002 return IsSigned ? Builder.CreateSRem(X, NewDivisor, "srem") in SimplifyAddWithRemainder()