reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
  413   if (match(Op1, m_SpecificFP(-1.0)))
  418   if (match(Op0, m_FNeg(m_Value(X))) && match(Op1, m_FNeg(m_Value(Y))))
  423   if (match(Op0, m_FNeg(m_Value(X))) && match(Op1, m_Constant(C)))
  427   if (Op0 == Op1 && match(Op0, m_Intrinsic<Intrinsic::fabs>(m_Value(X))))
  431   if (Value *V = SimplifySelectsFeedingBinaryOp(I, Op0, Op1))
  437     if (match(Op1, m_Constant(C)) && C->isFiniteNonZeroFP()) {
  488         match(Op1, m_OneUse(m_Intrinsic<Intrinsic::sqrt>(m_Value(Y))))) {
  496     if (I.hasNoNaNs() && I.hasNoSignedZeros() && Op0 == Op1 &&
  516         match(Op1, m_Intrinsic<Intrinsic::exp>(m_Value(Y))) &&
  517         (Op0->hasOneUse() || Op1->hasOneUse())) {
  526         match(Op1, m_Intrinsic<Intrinsic::exp2>(m_Value(Y))) &&
  527         (Op0->hasOneUse() || Op1->hasOneUse())) {
  540     if (match(Op0, m_OneUse(m_c_FMul(m_Specific(Op1), m_Value(Y)))) &&
  541         Op1 != Y) {
  542       Value *XX = Builder.CreateFMulFMF(Op1, Op1, &I);
  542       Value *XX = Builder.CreateFMulFMF(Op1, Op1, &I);
  545     if (match(Op1, m_OneUse(m_c_FMul(m_Specific(Op0), m_Value(Y)))) &&
  558       Y = Op1;
  560     if (match(Op1, m_OneUse(m_Intrinsic<Intrinsic::log2>(
  562       Log2 = cast<IntrinsicInst>(Op1);