Home | History | Annotate | Download | only in InstCombine

Lines Matching full:issigned

81                               bool IsSigned) {
83 if (IsSigned)
93 bool IsSigned) {
102 if (IsSigned && C1.isMinSignedValue() && C2.isAllOnesValue())
105 APInt Remainder(C1.getBitWidth(), /*Val=*/0ULL, IsSigned);
106 if (IsSigned)
808 bool IsSigned = I.getOpcode() == Instruction::SDiv;
811 if ((IsSigned && match(LHS, m_SDiv(m_Value(X), m_APInt(C1)))) ||
812 (!IsSigned && match(LHS, m_UDiv(m_Value(X), m_APInt(C1))))) {
813 APInt Product(C1->getBitWidth(), /*Val=*/0ULL, IsSigned);
814 if (!MultiplyOverflows(*C1, *C2, Product, IsSigned))
819 if ((IsSigned && match(LHS, m_NSWMul(m_Value(X), m_APInt(C1)))) ||
820 (!IsSigned && match(LHS, m_NUWMul(m_Value(X), m_APInt(C1))))) {
821 APInt Quotient(C1->getBitWidth(), /*Val=*/0ULL, IsSigned);
824 if (IsMultiple(*C2, *C1, Quotient, IsSigned)) {
832 if (IsMultiple(*C1, *C2, Quotient, IsSigned)) {
836 !IsSigned &&
844 if ((IsSigned && match(LHS, m_NSWShl(m_Value(X), m_APInt(C1))) &&
846 (!IsSigned && match(LHS, m_NUWShl(m_Value(X), m_APInt(C1))))) {
847 APInt Quotient(C1->getBitWidth(), /*Val=*/0ULL, IsSigned);
852 if (IsMultiple(*C2, C1Shifted, Quotient, IsSigned)) {
860 if (IsMultiple(C1Shifted, *C2, Quotient, IsSigned)) {
864 !IsSigned &&
885 bool isSigned = I.getOpcode() == Instruction::SDiv;
886 if (isSigned) {
909 bool isSigned = I.getOpcode() == Instruction::SDiv;
910 if ((isSigned && match(Z, m_SRem(m_Specific(X), m_Specific(Op1)))) ||
911 (!isSigned && match(Z, m_URem(m_Specific(X), m_Specific(Op1)))))