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

References

lib/Transforms/InstCombine/InstCombineAddSub.cpp
  879   if (match(Op0, m_Sub(m_Constant(Op00C), m_Value(X))))
  880     return BinaryOperator::CreateSub(ConstantExpr::getAdd(Op00C, Op1C), X);
  885   if (match(Op0, m_OneUse(m_Sub(m_Value(X), m_Value(Y)))) &&
  887     return BinaryOperator::CreateAdd(Builder.CreateNot(Y), X);
  890   if (match(Op0, m_ZExt(m_Value(X))) &&
  891       X->getType()->getScalarSizeInBits() == 1)
  892     return SelectInst::Create(X, AddOne(Op1C), Op1);
  895   if (match(Op0, m_Not(m_Value(X))))
  896     return BinaryOperator::CreateSub(SubOne(Op1C), X);
  921   if (match(Op0, m_ZExt(m_Xor(m_Value(X), m_APInt(C2)))) &&
  923     return CastInst::Create(Instruction::SExt, X, Ty);
  931     if (match(Op0, m_SExt(m_Value(X))) &&
  932         X->getType()->getScalarSizeInBits() == 1)
  933       return new ZExtInst(Builder.CreateNot(X), Ty);
  938     if (match(Op0, m_AShr(m_Shl(m_Value(X), m_APInt(C2)), m_APInt(C3))) &&
  940       Value *NotX = Builder.CreateNot(X);