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

References

lib/Analysis/InlineCost.cpp
 1097       !match(&I, m_FNeg(m_Value())))
lib/Analysis/InstructionSimplify.cpp
 1027     if ((IsSigned && match(X, m_SDiv(m_Value(), m_Specific(Op1)))) ||
 1028         (!IsSigned && match(X, m_UDiv(m_Value(), m_Specific(Op1)))))
 1033   if ((IsSigned && match(Op0, m_SRem(m_Value(), m_Specific(Op1)))) ||
 1034       (!IsSigned && match(Op0, m_URem(m_Value(), m_Specific(Op1)))))
 1076        match(Op0, m_SRem(m_Value(), m_Specific(Op1)))) ||
 1078        match(Op0, m_URem(m_Value(), m_Specific(Op1)))))
 1084         match(Op0, m_NSWShl(m_Specific(Op1), m_Value()))) ||
 1086         match(Op0, m_NUWShl(m_Specific(Op1), m_Value())))))
 1595   if (match(Y, m_c_And(m_Specific(X), m_Value())) ||
 1596       match(Y, m_c_And(m_PtrToInt(m_Specific(X)), m_Value())))
 1603   if (match(X, m_c_And(m_Specific(Y), m_Value())) ||
 1604       match(X, m_c_And(m_PtrToInt(m_Specific(Y)), m_Value())))
 1619   if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value())))
 1692   if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value())))
 1930   if (match(Op0, m_c_Or(m_Specific(Op1), m_Value())))
 1934   if (match(Op1, m_c_Or(m_Specific(Op0), m_Value())))
 2081   if (match(Op0, m_c_And(m_Specific(Op1), m_Value())))
 2085   if (match(Op1, m_c_And(m_Specific(Op0), m_Value())))
 2089   if (match(Op0, m_Not(m_c_And(m_Specific(Op1), m_Value()))))
 2093   if (match(Op1, m_Not(m_c_And(m_Specific(Op1), m_Value()))))
 2776   if (LBO && match(LBO, m_c_And(m_Value(), m_Specific(RHS)))) {
 2783   if (RBO && match(RBO, m_c_And(m_Value(), m_Specific(LHS)))) {
 2791   if (!CmpInst::isUnsigned(Pred) && match(LHS, m_Neg(m_ZExt(m_Value())))) {
 2813   if (LBO && match(LBO, m_URem(m_Value(), m_Specific(RHS)))) {
 2843   if (RBO && match(RBO, m_URem(m_Value(), m_Specific(LHS)))) {
 2874   if (LBO && (match(LBO, m_LShr(m_Specific(RHS), m_Value())) ||
 2875               match(LBO, m_UDiv(m_Specific(RHS), m_Value())))) {
 2885   if (RBO && (match(RBO, m_LShr(m_Specific(LHS), m_Value())) ||
 2886               match(RBO, m_UDiv(m_Specific(LHS), m_Value())))) {
 2901     if (LBO && match(LBO, m_Shl(m_APInt(CI2Val), m_Value())) &&
 3583     if ((match(LHS, m_Intrinsic<Intrinsic::minnum>(m_Value(), m_APFloat(C2))) &&
 3585         (match(LHS, m_Intrinsic<Intrinsic::maxnum>(m_Value(), m_APFloat(C2))) &&
 3831     auto isFsh = m_CombineOr(m_Intrinsic<Intrinsic::fshl>(m_Value(X), m_Value(),
 3833                              m_Intrinsic<Intrinsic::fshr>(m_Value(), m_Value(X),
 4991     if (match(Op0, m_SIToFP(m_Value())) || match(Op0, m_UIToFP(m_Value())))
 4991     if (match(Op0, m_SIToFP(m_Value())) || match(Op0, m_UIToFP(m_Value())))
lib/Analysis/ValueTracking.cpp
  199   if (match(LHS, m_c_And(m_Not(m_Value(M)), m_Value())) &&
  200       match(RHS, m_c_And(m_Specific(M), m_Value())))
  202   if (match(RHS, m_c_And(m_Not(m_Value(M)), m_Value())) &&
  203       match(LHS, m_c_And(m_Specific(M), m_Value())))
 1754   if (match(V, m_Shl(m_One(), m_Value())))
 1759   if (match(V, m_LShr(m_SignMask(), m_Value())))
 1769   if (OrZero && (match(V, m_Shl(m_Value(X), m_Value())) ||
 1770                  match(V, m_LShr(m_Value(X), m_Value()))))
 1797       if (match(X, m_And(m_Specific(Y), m_Value())) ||
 1798           match(X, m_And(m_Value(), m_Specific(Y))))
 1801       if (match(Y, m_And(m_Specific(X), m_Value())) ||
 1802           match(Y, m_And(m_Value(), m_Specific(X))))
 1826   if (match(V, m_Exact(m_LShr(m_Value(), m_Value()))) ||
 1826   if (match(V, m_Exact(m_LShr(m_Value(), m_Value()))) ||
 1827       match(V, m_Exact(m_UDiv(m_Value(), m_Value())))) {
 1827       match(V, m_Exact(m_UDiv(m_Value(), m_Value())))) {
 2164   else if (match(V, m_Exact(m_IDiv(m_Value(X), m_Value())))) {
 2914   if (match(Op, m_FAdd(m_Value(), m_PosZeroFP())))
lib/Analysis/VectorUtils.cpp
  320   if (match(V, m_ShuffleVector(m_InsertElement(m_Value(), m_Value(Splat),
  322                                m_Value(), m_ZeroInt())))
  345   if (match(V, m_ShuffleVector(m_Value(), m_Value(), m_Constant(Mask))))
  345   if (match(V, m_ShuffleVector(m_Value(), m_Value(), m_Constant(Mask))))
lib/Target/AArch64/AArch64ISelLowering.cpp
 8670   if (!match(Ext1, m_ZExtOrSExt(m_Value())) ||
 8671       !match(Ext2, m_ZExtOrSExt(m_Value())) ||
lib/Target/ARM/ARMISelLowering.cpp
14739   if (!match(Ext1, m_ZExtOrSExt(m_Value())) ||
14740       !match(Ext2, m_ZExtOrSExt(m_Value())) ||
14792              m_ShuffleVector(m_InsertElement(m_Undef(), m_Value(), m_ZeroInt()),
lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
  225   if (match(&I, m_c_And(m_OneUse(m_And(m_Value(), m_Value())), m_Value())))
  225   if (match(&I, m_c_And(m_OneUse(m_And(m_Value(), m_Value())), m_Value())))
  225   if (match(&I, m_c_And(m_OneUse(m_And(m_Value(), m_Value())), m_Value())))
  227   else if (match(&I, m_And(m_OneUse(m_Or(m_Value(), m_Value())), m_One())))
  227   else if (match(&I, m_And(m_OneUse(m_Or(m_Value(), m_Value())), m_One())))
lib/Transforms/InstCombine/InstCombineAddSub.cpp
  904   if (match(Op0, m_Or(m_Value(), m_APInt(C2))) && *C2 == -*C)
 1127   if (HadTrunc && !match(&I, m_c_BinOp(m_OneUse(m_Value()), m_Value())))
 1127   if (HadTrunc && !match(&I, m_c_BinOp(m_OneUse(m_Value()), m_Value())))
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
 1423   if (match(Op1, m_FCmp(Pred, m_Value(), m_AnyZeroFP())))
 1991   bool OrOfOrs = match(Op0, m_Or(m_Value(), m_Value())) ||
 1991   bool OrOfOrs = match(Op0, m_Or(m_Value(), m_Value())) ||
 1992                  match(Op1, m_Or(m_Value(), m_Value()));
 1992                  match(Op1, m_Or(m_Value(), m_Value()));
 1995   bool OrOfShifts = match(Op0, m_LogicalShift(m_Value(), m_Value())) &&
 1995   bool OrOfShifts = match(Op0, m_LogicalShift(m_Value(), m_Value())) &&
 1996                     match(Op1, m_LogicalShift(m_Value(), m_Value()));
 1996                     match(Op1, m_LogicalShift(m_Value(), m_Value()));
 1999   bool OrOfAnds = match(Op0, m_And(m_Value(), m_Value())) &&
 1999   bool OrOfAnds = match(Op0, m_And(m_Value(), m_Value())) &&
 2000                   match(Op1, m_And(m_Value(), m_Value()));
 2000                   match(Op1, m_And(m_Value(), m_Value()));
 2008   bool OrOfAndAndSh = (match(Op0, m_LogicalShift(m_Value(), m_Value())) &&
 2008   bool OrOfAndAndSh = (match(Op0, m_LogicalShift(m_Value(), m_Value())) &&
 2009                        match(Op1, m_And(m_Value(), m_Value()))) ||
 2009                        match(Op1, m_And(m_Value(), m_Value()))) ||
 2010                       (match(Op0, m_And(m_Value(), m_Value())) &&
 2010                       (match(Op0, m_And(m_Value(), m_Value())) &&
 2011                        match(Op1, m_LogicalShift(m_Value(), m_Value())));
 2011                        match(Op1, m_LogicalShift(m_Value(), m_Value())));
 2597   if (match(Op0, m_Xor(m_Value(), m_Value()))) {
 2597   if (match(Op0, m_Xor(m_Value(), m_Value()))) {
 2999   if (match(&I, m_c_Xor(m_c_And(m_Not(m_Value(M)), m_Value()),
 3000                         m_c_And(m_Deferred(M), m_Value()))))
 3092   if (match(&I, m_Not(m_OneUse(m_Cmp(Pred, m_Value(), m_Value()))))) {
 3092   if (match(&I, m_Not(m_OneUse(m_Cmp(Pred, m_Value(), m_Value()))))) {
lib/Transforms/InstCombine/InstCombineCalls.cpp
 3853                   m_Value(), m_Specific(II->getArgOperand(1)))))
lib/Transforms/InstCombine/InstCombineCasts.cpp
  826         !match(A, m_Shr(m_Value(), m_Constant()))) {
lib/Transforms/InstCombine/InstCombineCompares.cpp
 3283       m_CombineOr(m_Not(m_Shl(m_AllOnes(), m_Value())),
 3284                   m_Add(m_Shl(m_One(), m_Value()), m_AllOnes())),
 3285       m_CombineOr(m_LShr(m_AllOnes(), m_Value()),
 3459   auto m_AnyLogicalShift = m_LogicalShift(m_Value(), m_Value());
 3459   auto m_AnyLogicalShift = m_LogicalShift(m_Value(), m_Value());
 3485   if (match(YShift, m_LShr(m_Value(), m_Value())))
 3485   if (match(YShift, m_LShr(m_Value(), m_Value())))
 3503                m_c_And(m_OneUse(m_AnyLogicalShift), m_Value())))
 3536   if (HadTrunc && match(WidestShift, m_LShr(m_Value(), m_Value()))) {
 3536   if (HadTrunc && match(WidestShift, m_LShr(m_Value(), m_Value()))) {
 4011     auto BitwiseAnd = m_c_And(m_Value(), LSubOne);
 4041   if (match(X, m_c_SMin(m_Specific(Op0), m_Value())) ||
 4042       match(X, m_c_SMax(m_Specific(Op0), m_Value())) ||
 4043       match(X, m_c_UMin(m_Specific(Op0), m_Value())) ||
 4044       match(X, m_c_UMax(m_Specific(Op0), m_Value()))) {
lib/Transforms/InstCombine/InstCombineInternal.h
   85     if (isa<CastInst>(V) || match(V, m_Neg(m_Value())) ||
   86         match(V, m_Not(m_Value())) || match(V, m_FNeg(m_Value())))
   86         match(V, m_Not(m_Value())) || match(V, m_FNeg(m_Value())))
  188   if (match(V, m_Not(m_Value())))
  209   if (match(V, m_Select(m_Value(), m_Not(m_Value()), m_Not(m_Value()))))
  209   if (match(V, m_Select(m_Value(), m_Not(m_Value()), m_Not(m_Value()))))
  209   if (match(V, m_Select(m_Value(), m_Not(m_Value()), m_Not(m_Value()))))
  230       if (!match(I, m_Not(m_Value())))
lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
 1316   if (!match(SI.getPointerOperand(), m_BitCast(m_Value())))
lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
  272       if (!match(Mul, m_Mul(m_Value(), m_Value())))
  272       if (!match(Mul, m_Mul(m_Value(), m_Value())))
  896   if (match(Op1, m_Shl(m_Power2(), m_Value())) ||
  897       match(Op1, m_ZExt(m_Shl(m_Power2(), m_Value())))) {
  974       bool IsExact = I.isExact() && match(Op0, m_Exact(m_Value()));
lib/Transforms/InstCombine/InstCombineSelect.cpp
  145     if (!match(V, m_And(m_Value(), m_Power2(AndRHS))))
  288   if ((match(&SI, m_SMin(m_Value(), m_Value())) ||
  288   if ((match(&SI, m_SMin(m_Value(), m_Value())) ||
  289        match(&SI, m_SMax(m_Value(), m_Value())) ||
  289        match(&SI, m_SMax(m_Value(), m_Value())) ||
  290        match(&SI, m_UMin(m_Value(), m_Value())) ||
  290        match(&SI, m_UMin(m_Value(), m_Value())) ||
  291        match(&SI, m_UMax(m_Value(), m_Value()))))
  291        match(&SI, m_UMax(m_Value(), m_Value()))))
  608     if (!match(CmpLHS, m_And(m_Value(), m_Power2(C1))))
 1343   match(&Sel, m_Select(m_Value(), m_Value(SelVal0), m_Value(SelVal1)));
 1846   if (!match(Cond, m_OneUse(m_ExtractElement(m_Value(), m_ConstantInt()))))
 2227   if (match(CondVal, m_OneUse(m_ICmp(Pred, m_Value(), m_Value()))) &&
 2227   if (match(CondVal, m_OneUse(m_ICmp(Pred, m_Value(), m_Value()))) &&
lib/Transforms/InstCombine/InstCombineShifts.cpp
   62   bool HadTwoRightShifts = match(Sh0, m_Shr(m_Value(), m_Value())) &&
   62   bool HadTwoRightShifts = match(Sh0, m_Shr(m_Value(), m_Value())) &&
   63                            match(Sh1, m_Shr(m_Value(), m_Value()));
   63                            match(Sh1, m_Shr(m_Value(), m_Value()));
   79       !match(Sh0, m_c_BinOp(m_OneUse(m_Value()), m_Value())))
   79       !match(Sh0, m_c_BinOp(m_OneUse(m_Value()), m_Value())))
  271     if (match(Masked, m_AShr(m_Value(), m_Value())))
  271     if (match(Masked, m_AShr(m_Value(), m_Value())))
  409   if ((IsLeftShift && match(I, m_LShr(m_Value(), m_ConstantInt(CI)))) ||
  410       (!IsLeftShift && match(I, m_Shl(m_Value(), m_ConstantInt(CI))))) {
 1150   if (HadTrunc && !match(&OldAShr, m_c_BinOp(m_OneUse(m_Value()), m_Value())))
 1150   if (HadTrunc && !match(&OldAShr, m_c_BinOp(m_OneUse(m_Value()), m_Value())))
lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
  469       if (match(I->getOperand(0), m_Shr(m_Value(), m_APInt(ShrAmt))))
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
   60   if (match(V, m_InsertElement(m_Value(), m_Value(), m_ConstantInt())))
   60   if (match(V, m_InsertElement(m_Value(), m_Value(), m_ConstantInt())))
   63   if (match(V, m_OneUse(m_Load(m_Value()))))
  188     if (!match(X, m_InsertElement(m_Value(), m_Value(Scalar),
 1771     if (!match(V0, m_InsertElement(m_Value(), m_Value(Scalar),
lib/Transforms/InstCombine/InstructionCombining.cpp
  529     if (match(Op, m_Shl(m_Value(), m_Constant(C)))) {
 1940         if (match(V, m_Neg(m_PtrToInt(m_Value())))) {
 2578   if (match(&BI, m_Br(m_OneUse(m_Cmp(Pred, m_Value(), m_Value())),
 2578   if (match(&BI, m_Br(m_OneUse(m_Cmp(Pred, m_Value(), m_Value())),
lib/Transforms/Scalar/CallSiteSplitting.cpp
  138   if (!match(Cond, m_ICmp(Pred, m_Value(), m_Constant())))
lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
  344   if (match(Condition, m_And(m_Value(), m_Value()))) {
  344   if (match(Condition, m_And(m_Value(), m_Value()))) {
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
 1915              m_Br(m_CombineAnd(m_ICmp(BCmpPred, m_Value(), m_Value()),
 1915              m_Br(m_CombineAnd(m_ICmp(BCmpPred, m_Value(), m_Value()),
lib/Transforms/Scalar/Reassociate.cpp
  209   if (!match(I, m_Not(m_Value())) && !match(I, m_Neg(m_Value())) &&
  209   if (!match(I, m_Not(m_Value())) && !match(I, m_Neg(m_Value())) &&
  210       !match(I, m_FNeg(m_Value())))
  582         if ((Opcode == Instruction::Mul && match(Tmp, m_Neg(m_Value()))) ||
  583             (Opcode == Instruction::FMul && match(Tmp, m_FNeg(m_Value())))) {
  857     if (!match(U, m_Neg(m_Value())) && !match(U, m_FNeg(m_Value())))
  857     if (!match(U, m_Neg(m_Value())) && !match(U, m_FNeg(m_Value())))
  924   if (match(Sub, m_Neg(m_Value())) || match(Sub, m_FNeg(m_Value()))) 
  924   if (match(Sub, m_Neg(m_Value())) || match(Sub, m_FNeg(m_Value()))) 
 1495         (match(TheOp, m_Neg(m_Value())) || match(TheOp, m_FNeg(m_Value()))))
 1495         (match(TheOp, m_Neg(m_Value())) || match(TheOp, m_FNeg(m_Value()))))
 1499     if (Ops.size() == 2 && match(TheOp, m_Not(m_Value())))
 1513     if (match(TheOp, m_Not(m_Value()))) {
 2120     } else if (match(I, m_Neg(m_Value()))) {
 2145     } else if (match(I, m_FNeg(m_Value()))) {
lib/Transforms/Utils/PredicateInfo.cpp
  358   if (m_c_And(m_Cmp(Pred, m_Value(), m_Value()),
  358   if (m_c_And(m_Cmp(Pred, m_Value(), m_Value()),
  359               m_Cmp(Pred, m_Value(), m_Value()))
  359               m_Cmp(Pred, m_Value(), m_Value()))
  424   if (match(BI->getCondition(), m_And(m_Cmp(Pred, m_Value(), m_Value()),
  424   if (match(BI->getCondition(), m_And(m_Cmp(Pred, m_Value(), m_Value()),
  425                                       m_Cmp(Pred, m_Value(), m_Value()))) ||
  425                                       m_Cmp(Pred, m_Value(), m_Value()))) ||
  426       match(BI->getCondition(), m_Or(m_Cmp(Pred, m_Value(), m_Value()),
  426       match(BI->getCondition(), m_Or(m_Cmp(Pred, m_Value(), m_Value()),
  427                                      m_Cmp(Pred, m_Value(), m_Value())))) {
  427                                      m_Cmp(Pred, m_Value(), m_Value())))) {
lib/Transforms/Utils/SimplifyCFG.cpp
 2354     if (!match(V0, m_Not(m_Value())))
 2356     auto Invertible = m_CombineOr(m_Not(m_Value()), m_AnyIntegralConstant());
 2357     return match(V0, m_Not(m_Value())) && match(V1, Invertible);
lib/Transforms/Utils/SimplifyIndVar.cpp
  774                 m_AShr(m_Shl(m_Value(), m_Specific(IVOperand)), m_APInt(C))) ||
  776                 m_LShr(m_Shl(m_Value(), m_Specific(IVOperand)), m_APInt(C)))) {
lib/Transforms/Utils/SimplifyLibCalls.cpp
  244     if (match(Size, m_Select(m_Value(), m_APInt(X), m_APInt(Y)))) {
lib/Transforms/Vectorize/SLPVectorizer.cpp
 3307   while (match(ZextLoad, m_Or(m_Value(), m_Value())) ||
 3307   while (match(ZextLoad, m_Or(m_Value(), m_Value())) ||
 3308          match(ZextLoad, m_Shl(m_Value(), m_Constant())))
unittests/IR/PatternMatch.cpp
   64   EXPECT_FALSE(m_OneUse(m_Value()).match(Two));
   65   EXPECT_FALSE(m_OneUse(m_Value()).match(Leaf));
  826   EXPECT_FALSE(m_NSWAdd(m_Value(), m_Value()).match(IRB.CreateAdd(L, R)));
  826   EXPECT_FALSE(m_NSWAdd(m_Value(), m_Value()).match(IRB.CreateAdd(L, R)));
  827   EXPECT_FALSE(m_NSWAdd(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  827   EXPECT_FALSE(m_NSWAdd(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  828   EXPECT_FALSE(m_NSWAdd(m_Value(), m_Value()).match(IRB.CreateNSWSub(L, R)));
  828   EXPECT_FALSE(m_NSWAdd(m_Value(), m_Value()).match(IRB.CreateNSWSub(L, R)));
  829   EXPECT_FALSE(m_NSWSub(m_Value(), m_Value()).match(IRB.CreateSub(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)));
  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)));
  831   EXPECT_FALSE(m_NSWSub(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  832   EXPECT_FALSE(m_NSWMul(m_Value(), m_Value()).match(IRB.CreateMul(L, R)));
  832   EXPECT_FALSE(m_NSWMul(m_Value(), m_Value()).match(IRB.CreateMul(L, R)));
  833   EXPECT_FALSE(m_NSWMul(m_Value(), m_Value()).match(IRB.CreateNUWMul(L, R)));
  833   EXPECT_FALSE(m_NSWMul(m_Value(), m_Value()).match(IRB.CreateNUWMul(L, R)));
  834   EXPECT_FALSE(m_NSWMul(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  834   EXPECT_FALSE(m_NSWMul(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  835   EXPECT_FALSE(m_NSWShl(m_Value(), m_Value()).match(IRB.CreateShl(L, R)));
  835   EXPECT_FALSE(m_NSWShl(m_Value(), m_Value()).match(IRB.CreateShl(L, R)));
  836   EXPECT_FALSE(m_NSWShl(m_Value(), m_Value()).match(
  836   EXPECT_FALSE(m_NSWShl(m_Value(), m_Value()).match(
  838   EXPECT_FALSE(m_NSWShl(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  838   EXPECT_FALSE(m_NSWShl(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  840   EXPECT_FALSE(m_NUWAdd(m_Value(), m_Value()).match(IRB.CreateAdd(L, R)));
  840   EXPECT_FALSE(m_NUWAdd(m_Value(), m_Value()).match(IRB.CreateAdd(L, R)));
  841   EXPECT_FALSE(m_NUWAdd(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  841   EXPECT_FALSE(m_NUWAdd(m_Value(), m_Value()).match(IRB.CreateNSWAdd(L, R)));
  842   EXPECT_FALSE(m_NUWAdd(m_Value(), m_Value()).match(IRB.CreateNUWSub(L, R)));
  842   EXPECT_FALSE(m_NUWAdd(m_Value(), m_Value()).match(IRB.CreateNUWSub(L, R)));
  843   EXPECT_FALSE(m_NUWSub(m_Value(), m_Value()).match(IRB.CreateSub(L, R)));
  843   EXPECT_FALSE(m_NUWSub(m_Value(), m_Value()).match(IRB.CreateSub(L, R)));
  844   EXPECT_FALSE(m_NUWSub(m_Value(), m_Value()).match(IRB.CreateNSWSub(L, R)));
  844   EXPECT_FALSE(m_NUWSub(m_Value(), m_Value()).match(IRB.CreateNSWSub(L, R)));
  845   EXPECT_FALSE(m_NUWSub(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  845   EXPECT_FALSE(m_NUWSub(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  846   EXPECT_FALSE(m_NUWMul(m_Value(), m_Value()).match(IRB.CreateMul(L, R)));
  846   EXPECT_FALSE(m_NUWMul(m_Value(), m_Value()).match(IRB.CreateMul(L, R)));
  847   EXPECT_FALSE(m_NUWMul(m_Value(), m_Value()).match(IRB.CreateNSWMul(L, R)));
  847   EXPECT_FALSE(m_NUWMul(m_Value(), m_Value()).match(IRB.CreateNSWMul(L, R)));
  848   EXPECT_FALSE(m_NUWMul(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  848   EXPECT_FALSE(m_NUWMul(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  849   EXPECT_FALSE(m_NUWShl(m_Value(), m_Value()).match(IRB.CreateShl(L, R)));
  849   EXPECT_FALSE(m_NUWShl(m_Value(), m_Value()).match(IRB.CreateShl(L, R)));
  850   EXPECT_FALSE(m_NUWShl(m_Value(), m_Value()).match(
  850   EXPECT_FALSE(m_NUWShl(m_Value(), m_Value()).match(
  852   EXPECT_FALSE(m_NUWShl(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  852   EXPECT_FALSE(m_NUWShl(m_Value(), m_Value()).match(IRB.CreateNUWAdd(L, R)));
  942   EXPECT_TRUE(match(VI1, m_InsertElement(m_Value(), m_Value(), m_Value())));
  942   EXPECT_TRUE(match(VI1, m_InsertElement(m_Value(), m_Value(), m_Value())));
  942   EXPECT_TRUE(match(VI1, m_InsertElement(m_Value(), m_Value(), m_Value())));
  949   EXPECT_TRUE(match(VI2, m_InsertElement(m_Value(), m_Value(), m_Value())));
  949   EXPECT_TRUE(match(VI2, m_InsertElement(m_Value(), m_Value(), m_Value())));
  949   EXPECT_TRUE(match(VI2, m_InsertElement(m_Value(), m_Value(), m_Value())));
  951       match(VI2, m_InsertElement(m_Value(), m_Value(), m_ConstantInt())));
  951       match(VI2, m_InsertElement(m_Value(), m_Value(), m_ConstantInt())));
  953       match(VI2, m_InsertElement(m_Value(), m_ConstantInt(), m_Value())));
  953       match(VI2, m_InsertElement(m_Value(), m_ConstantInt(), m_Value())));
  954   EXPECT_FALSE(match(VI2, m_InsertElement(m_Constant(), m_Value(), m_Value())));
  954   EXPECT_FALSE(match(VI2, m_InsertElement(m_Constant(), m_Value(), m_Value())));
  966   EXPECT_FALSE(match(EX1, m_ExtractElement(m_Value(), m_ConstantInt())));
  967   EXPECT_TRUE(match(EX2, m_ExtractElement(m_Value(), m_ConstantInt())));
  971   EXPECT_TRUE(match(SI1, m_ShuffleVector(m_Value(), m_Undef(), m_Zero())));
  984       SI3, m_ShuffleVector(m_InsertElement(m_Undef(), m_Value(), m_Zero()),
  987       SI4, m_ShuffleVector(m_InsertElement(m_Undef(), m_Value(), m_Zero()),
 1089   EXPECT_TRUE(match(Br1, m_Br(m_Value(), m_BasicBlock(), m_BasicBlock())));
 1092   EXPECT_TRUE(match(Br1, m_Br(m_Value(), m_BasicBlock(A), m_BasicBlock(B))));
 1097       match(Br1, m_Br(m_Value(), m_SpecificBB(FalseBB), m_BasicBlock())));
 1099       match(Br1, m_Br(m_Value(), m_BasicBlock(), m_SpecificBB(TrueBB))));
 1101       match(Br1, m_Br(m_Value(), m_SpecificBB(FalseBB), m_BasicBlock(TrueBB))));
 1103       match(Br1, m_Br(m_Value(), m_SpecificBB(TrueBB), m_BasicBlock(FalseBB))));
 1106   EXPECT_FALSE(match(Br1, m_Br(m_Value(), m_BasicBlock(A), m_Deferred(A))));
 1109   EXPECT_TRUE(match(Br2, m_Br(m_Value(), m_BasicBlock(A), m_Deferred(A))));