/external/llvm/lib/Transforms/InstCombine/ |
D | InstCombineAndOrXor.cpp | 942 match(Val, m_And(m_Specific(V), m_ConstantInt(AndCst)))) { in FoldAndOfICmps() 946 match(Val2, m_And(m_Specific(V), m_ConstantInt(AndCst)))) { in FoldAndOfICmps() 1234 match(Op1, m_OneUse(m_Xor(m_ZExt(m_Value(B)), m_Specific(C1))))) { in matchDeMorgansLaws() 1425 if (match(Op0, m_Or(m_Not(m_Specific(Op1)), m_Value(A))) || in visitAnd() 1426 match(Op0, m_Or(m_Value(A), m_Not(m_Specific(Op1))))) in visitAnd() 1428 if (match(Op1, m_Or(m_Not(m_Specific(Op0)), m_Value(A))) || in visitAnd() 1429 match(Op1, m_Or(m_Value(A), m_Not(m_Specific(Op0))))) in visitAnd() 1434 if (match(Op1, m_Xor(m_Xor(m_Specific(B), m_Value(C)), m_Specific(A)))) in visitAnd() 1440 if (match(Op1, m_Xor(m_Specific(B), m_Specific(A)))) in visitAnd() 1446 match(Op1, m_Xor(m_Not(m_Specific(A)), m_Specific(B)))) in visitAnd() [all …]
|
D | InstCombineAddSub.cpp | 1217 if (match(FV, m_Zero()) && match(TV, m_Sub(m_Value(N), m_Specific(A)))) in visitAdd() 1221 if (match(TV, m_Zero()) && match(FV, m_Sub(m_Value(N), m_Specific(A)))) in visitAdd() 1266 (match(LHS, m_And(m_Specific(A), m_Specific(B))) || in visitAdd() 1267 match(LHS, m_And(m_Specific(B), m_Specific(A))))) in visitAdd() 1271 (match(RHS, m_And(m_Specific(A), m_Specific(B))) || in visitAdd() 1272 match(RHS, m_And(m_Specific(B), m_Specific(A))))) in visitAdd() 1280 (match(LHS, m_And(m_Specific(A), m_Specific(B))) || in visitAdd() 1281 match(LHS, m_And(m_Specific(B), m_Specific(A))))) { in visitAdd() 1289 (match(RHS, m_And(m_Specific(A), m_Specific(B))) || in visitAdd() 1290 match(RHS, m_And(m_Specific(B), m_Specific(A))))) { in visitAdd() [all …]
|
D | InstCombineSelect.cpp | 318 bool OrOnFalseVal = match(FalseVal, m_Or(m_Specific(TrueVal), m_Power2(C2))); in foldSelectICmpAndOr() 320 OrOnTrueVal = match(TrueVal, m_Or(m_Specific(FalseVal), m_Power2(C2))); in foldSelectICmpAndOr() 388 if (match(Count, m_Intrinsic<Intrinsic::cttz>(m_Specific(CmpLHS))) || in foldSelectCttzCtlz() 389 match(Count, m_Intrinsic<Intrinsic::ctlz>(m_Specific(CmpLHS)))) { in foldSelectCttzCtlz() 452 if (match(TrueVal, m_SExt(m_Specific(CmpLHS))) && in visitSelectInstWithICmp() 456 } else if (match(FalseVal, m_SExt(m_Specific(CmpLHS))) && in visitSelectInstWithICmp() 466 if (match(TrueVal, m_ZExt(m_Specific(CmpLHS))) && in visitSelectInstWithICmp() 470 } else if (match(FalseVal, m_ZExt(m_Specific(CmpLHS))) && in visitSelectInstWithICmp() 572 match(FalseVal, m_Xor(m_Specific(X), m_APInt(C))) && *Y == *C) in visitSelectInstWithICmp() 576 match(TrueVal, m_Xor(m_Specific(X), m_APInt(C))) && *Y == *C) in visitSelectInstWithICmp() [all …]
|
D | InstCombineShifts.cpp | 428 m_Specific(Op1)))) { in FoldShiftByConstant() 447 m_And(m_OneUse(m_Shr(m_Value(V1), m_Specific(Op1))), in FoldShiftByConstant() 464 m_Specific(Op1)))) { in FoldShiftByConstant() 800 if (match(Op0, m_Shl(m_Value(X), m_Specific(Op1)))) { in visitAShr()
|
D | InstCombineMulDivRem.cpp | 910 if ((isSigned && match(Z, m_SRem(m_Specific(X), m_Specific(Op1)))) || in commonIDivTransforms() 911 (!isSigned && match(Z, m_URem(m_Specific(X), m_Specific(Op1))))) in commonIDivTransforms()
|
D | InstCombineCompares.cpp | 1467 match(LShr, m_LShr(m_Specific(X), m_Value(Y)))) { in visitICmpInstWithInstAndIntCst() 3618 auto LSubOne = m_Add(m_Specific(Op1), m_AllOnes()); in visitICmpInst() 3752 match(Op1, m_OneUse(m_LShr(m_Value(B), m_Specific(Cst1))))) || in visitICmpInst() 3754 match(Op1, m_OneUse(m_AShr(m_Value(B), m_Specific(Cst1)))))) { in visitICmpInst() 3769 match(Op1, m_OneUse(m_Shl(m_Value(B), m_Specific(Cst1))))) { in visitICmpInst()
|
D | InstructionCombining.cpp | 1603 m_PtrToInt(m_Specific(GEP.getOperand(0)))))) { in visitGetElementPtrInst() 2017 if (!match(TI, m_Br(m_ICmp(Pred, m_Specific(Op), m_Zero()), TrueBB, FalseBB))) in tryToMoveFreeBeforeNullTest()
|
D | InstCombineCasts.cpp | 949 match(And, m_OneUse(m_And(m_Trunc(m_Value(X)), m_Specific(C)))) && in visitZExt()
|
/external/llvm/lib/Analysis/ |
D | InstructionSimplify.cpp | 554 if (match(Op1, m_Sub(m_Value(Y), m_Specific(Op0))) || in SimplifyAddInst() 555 match(Op0, m_Sub(m_Value(Y), m_Specific(Op1)))) in SimplifyAddInst() 559 if (match(Op0, m_Not(m_Specific(Op1))) || in SimplifyAddInst() 560 match(Op1, m_Not(m_Specific(Op0)))) in SimplifyAddInst() 814 if (match(Op1, m_FSub(m_AnyZero(), m_Specific(Op0)))) in SimplifyFAddInst() 816 else if (match(Op0, m_FSub(m_AnyZero(), m_Specific(Op1)))) in SimplifyFAddInst() 921 if (match(Op0, m_Exact(m_IDiv(m_Value(X), m_Specific(Op1)))) || // (X / Y) * Y in SimplifyMulInst() 922 match(Op1, m_Exact(m_IDiv(m_Value(X), m_Specific(Op0))))) // Y * (X / Y) in SimplifyMulInst() 1049 if ((isSigned && match(Op0, m_SRem(m_Value(), m_Specific(Op1)))) || in SimplifyDiv() 1050 (!isSigned && match(Op0, m_URem(m_Value(), m_Specific(Op1))))) in SimplifyDiv() [all …]
|
D | ValueTracking.cpp | 767 auto m_V = m_CombineOr(m_Specific(V), in computeKnownBitsFromAssume() 768 m_CombineOr(m_PtrToInt(m_Specific(V)), in computeKnownBitsFromAssume() 769 m_BitCast(m_Specific(V)))); in computeKnownBitsFromAssume() 1087 if (match(I->getOperand(0), m_Add(m_Specific(I->getOperand(1)), in computeKnownBitsFromOperator() 1089 match(I->getOperand(1), m_Add(m_Specific(I->getOperand(0)), in computeKnownBitsFromOperator() 1764 if (match(X, m_Neg(m_Specific(Y))) || match(Y, m_Neg(m_Specific(X)))) in isKnownToBeAPowerOfTwo() 1774 if (match(X, m_And(m_Specific(Y), m_Value())) || in isKnownToBeAPowerOfTwo() 1775 match(X, m_And(m_Value(), m_Specific(Y)))) in isKnownToBeAPowerOfTwo() 1778 if (match(Y, m_And(m_Specific(X), m_Value())) || in isKnownToBeAPowerOfTwo() 1779 match(Y, m_And(m_Value(), m_Specific(X)))) in isKnownToBeAPowerOfTwo() [all …]
|
D | LazyValueInfo.cpp | 913 match(ICI->getOperand(0), m_Add(m_Specific(Val), in getValueFromFromCondition()
|
/external/llvm/lib/Transforms/Scalar/ |
D | StructurizeCFG.cpp | 388 if (I->getParent() == Parent && match(I, m_Not(m_Specific(Condition)))) in invert()
|
/external/llvm/include/llvm/IR/ |
D | PatternMatch.h | 322 inline specificval_ty m_Specific(const Value *V) { return V; } in m_Specific() function
|