Lines Matching refs:IsSigned
560 bool IsSigned) { in multiplyOverflows() argument
562 Product = IsSigned ? C1.smul_ov(C2, Overflow) : C1.umul_ov(C2, Overflow); in multiplyOverflows()
568 bool IsSigned) { in isMultiple() argument
576 if (IsSigned && C1.isMinSignedValue() && C2.isAllOnesValue()) in isMultiple()
579 APInt Remainder(C1.getBitWidth(), /*Val=*/0ULL, IsSigned); in isMultiple()
580 if (IsSigned) in isMultiple()
594 bool IsSigned = I.getOpcode() == Instruction::SDiv; in commonIDivTransforms() local
614 if ((IsSigned && match(Op0, m_SDiv(m_Value(X), m_APInt(C1)))) || in commonIDivTransforms()
615 (!IsSigned && match(Op0, m_UDiv(m_Value(X), m_APInt(C1))))) { in commonIDivTransforms()
616 APInt Product(C1->getBitWidth(), /*Val=*/0ULL, IsSigned); in commonIDivTransforms()
617 if (!multiplyOverflows(*C1, *C2, Product, IsSigned)) in commonIDivTransforms()
622 if ((IsSigned && match(Op0, m_NSWMul(m_Value(X), m_APInt(C1)))) || in commonIDivTransforms()
623 (!IsSigned && match(Op0, m_NUWMul(m_Value(X), m_APInt(C1))))) { in commonIDivTransforms()
624 APInt Quotient(C1->getBitWidth(), /*Val=*/0ULL, IsSigned); in commonIDivTransforms()
627 if (isMultiple(*C2, *C1, Quotient, IsSigned)) { in commonIDivTransforms()
635 if (isMultiple(*C1, *C2, Quotient, IsSigned)) { in commonIDivTransforms()
639 Mul->setHasNoUnsignedWrap(!IsSigned && OBO->hasNoUnsignedWrap()); in commonIDivTransforms()
645 if ((IsSigned && match(Op0, m_NSWShl(m_Value(X), m_APInt(C1))) && in commonIDivTransforms()
647 (!IsSigned && match(Op0, m_NUWShl(m_Value(X), m_APInt(C1))))) { in commonIDivTransforms()
648 APInt Quotient(C1->getBitWidth(), /*Val=*/0ULL, IsSigned); in commonIDivTransforms()
653 if (isMultiple(*C2, C1Shifted, Quotient, IsSigned)) { in commonIDivTransforms()
661 if (isMultiple(C1Shifted, *C2, Quotient, IsSigned)) { in commonIDivTransforms()
665 Mul->setHasNoUnsignedWrap(!IsSigned && OBO->hasNoUnsignedWrap()); in commonIDivTransforms()
678 if (IsSigned) { in commonIDivTransforms()
699 if ((IsSigned && match(Z, m_SRem(m_Specific(X), m_Specific(Op1)))) || in commonIDivTransforms()
700 (!IsSigned && match(Z, m_URem(m_Specific(X), m_Specific(Op1))))) in commonIDivTransforms()
705 if (IsSigned && match(Op0, m_NSWShl(m_Specific(Op1), m_Value(Y)))) in commonIDivTransforms()
707 if (!IsSigned && match(Op0, m_NUWShl(m_Specific(Op1), m_Value(Y)))) in commonIDivTransforms()
714 if ((IsSigned && HasNSW) || (!IsSigned && HasNUW)) { in commonIDivTransforms()