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

References

lib/Analysis/ValueTracking.cpp
 4691       match(FalseVal, m_NSWSub(m_Specific(CmpLHS), m_Specific(CmpRHS))))
 4698       match(TrueVal, m_NSWSub(m_Specific(CmpLHS), m_Specific(CmpRHS))))
 4745       (NeedNSW && match(X, m_NSWSub(m_ZeroInt(), m_Specific(Y)))))
 4750       (NeedNSW && match(Y, m_NSWSub(m_ZeroInt(), m_Specific(X)))))
 4757          (NeedNSW && (match(X, m_NSWSub(m_Value(A), m_Value(B))) &&
 4758                        match(Y, m_NSWSub(m_Specific(B), m_Specific(A)))));
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
 1967     if (match(&I, m_c_And(m_OneUse(m_AShr(m_NSWSub(m_Value(Y), m_Value(X)),
 2718     if (match(&I, m_c_Or(m_OneUse(m_AShr(m_NSWSub(m_Value(Y), m_Value(X)),
lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
 1101         match(Op0, m_NSWSub(m_Zero(), m_Value(X)))) {
 1111   if (match(&I, m_SDiv(m_OneUse(m_NSWSub(m_Zero(), m_Value(X))), m_Value(Y))))
 1419   if (match(&I, m_SRem(m_OneUse(m_NSWSub(m_Zero(), m_Value(X))), m_Value(Y))))
lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
 1188       match(I, m_NSWSub(m_Value(LHS), m_Value(RHS)))) {
unittests/IR/PatternMatch.cpp
  792       m_NSWSub(m_Value(MatchL), m_Value(MatchR)).match(IRB.CreateNSWSub(L, R)));
  829   EXPECT_FALSE(m_NSWSub(m_Value(), m_Value()).match(IRB.CreateSub(L, R)));
  830   EXPECT_FALSE(m_NSWSub(m_Value(), m_Value()).match(IRB.CreateNUWSub(L, R)));
  831   EXPECT_FALSE(m_NSWSub(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));