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

References

lib/Transforms/InstCombine/InstCombineAddSub.cpp
 1229     if (match(LHS, m_Xor(m_Value(XorLHS), m_ConstantInt(XorRHS)))) {
 1256       if (LHS->hasOneUse() && (XorRHS->getValue()+1).isPowerOf2()) {
 1271     return BinaryOperator::CreateXor(LHS, RHS);
 1274   if (LHS == RHS) {
 1275     auto *Shl = BinaryOperator::CreateShl(LHS, ConstantInt::get(Ty, 1));
 1282   if (match(LHS, m_Neg(m_Value(A)))) {
 1299     return BinaryOperator::CreateSub(LHS, B);
 1316   if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT))
 1317     return BinaryOperator::CreateOr(LHS, RHS);
 1326     if (LHS->hasOneUse() &&
 1327         match(LHS, m_And(m_Value(X), m_ConstantInt(C2))) &&
 1341         Value *NewAdd = Builder.CreateAdd(X, CRHS, LHS->getName());
 1349     SelectInst *SI = dyn_cast<SelectInst>(LHS);
 1353       A = LHS;
 1394   if (!I.hasNoSignedWrap() && willNotOverflowSignedAdd(LHS, RHS, I)) {
 1398   if (!I.hasNoUnsignedWrap() && willNotOverflowUnsignedAdd(LHS, RHS, I)) {