|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/IR/PatternMatch.h 1325 return m_CombineOr(m_ZExt(Op), Op);
1338 return m_CombineOr(m_ZExt(Op), m_SExt(Op));
lib/Analysis/InstructionSimplify.cpp 939 (match(Op1, m_ZExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1)))
2791 if (!CmpInst::isUnsigned(Pred) && match(LHS, m_Neg(m_ZExt(m_Value())))) {
lib/CodeGen/CodeGenPrepare.cpp 6701 m_c_Or(m_OneUse(m_ZExt(m_Value(LValue))),
6702 m_OneUse(m_Shl(m_OneUse(m_ZExt(m_Value(HValue))),
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp 768 !match(T, m_Shl(m_ZExt(m_Value(Q)), m_ZExt(m_Specific(CIV)))))
768 !match(T, m_Shl(m_ZExt(m_Value(Q)), m_ZExt(m_Specific(CIV)))))
lib/Transforms/InstCombine/InstCombineAddSub.cpp 839 match(Op0, m_OneUse(m_ZExt(m_NUWAdd(m_Value(X), m_APInt(C2))))) &&
856 if (match(Op0, m_OneUse(m_ZExt(m_NUWAdd(m_Value(X), m_Constant(NarrowC)))))) {
890 if (match(Op0, m_ZExt(m_Value(X))) &&
921 if (match(Op0, m_ZExt(m_Xor(m_Value(X), m_APInt(C2)))) &&
1732 if (match(Op1, m_ZExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1)) {
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp 1511 if (match(Cast, m_OneUse(m_ZExt(m_Value(X))))) {
1697 if (!match(Op1, m_ZExt(m_Value(X))) || Op1->hasNUsesOrMore(3))
1828 if (match(Op0I, m_OneUse(m_c_BinOp(m_OneUse(m_ZExt(m_Value(X))),
2065 if (match(L, m_ZExt(m_And(m_Value(X), m_SpecificInt(Mask)))) &&
2066 match(R, m_And(m_Neg(m_ZExt(m_And(m_Specific(X), m_SpecificInt(Mask)))),
lib/Transforms/InstCombine/InstCombineCalls.cpp 3721 ((match(Src1, m_One()) && match(Src0, m_ZExt(m_Value(ExtSrc)))) ||
lib/Transforms/InstCombine/InstCombineCasts.cpp 540 if (match(L, m_ZExt(m_And(m_Value(X), m_SpecificInt(Mask)))) &&
541 match(R, m_ZExt(m_And(m_Neg(m_Specific(X)), m_SpecificInt(Mask)))))
760 match(Src, m_LShr(m_ZExt(m_Value(A)), m_ConstantInt(Cst)))) {
lib/Transforms/InstCombine/InstCombineCompares.cpp 4197 if ((Op0->hasOneUse() && match(Op0, m_ZExt(m_Value(A))) &&
4200 match(Op1, m_ZExt(m_Value(A))))) {
5552 if (match(Op0, m_Mul(m_ZExt(m_Value(A)), m_ZExt(m_Value(B))))) {
5552 if (match(Op0, m_Mul(m_ZExt(m_Value(A)), m_ZExt(m_Value(B))))) {
5556 if (match(Op1, m_Mul(m_ZExt(m_Value(A)), m_ZExt(m_Value(B))))) {
5556 if (match(Op1, m_Mul(m_ZExt(m_Value(A)), m_ZExt(m_Value(B))))) {
lib/Transforms/InstCombine/InstCombineMulDivRem.cpp 359 if (match(Op0, m_ZExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1))
361 if (match(Op1, m_ZExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1))
862 if (!match(Op1, m_ZExt(m_Value(ShiftLeft))))
897 match(Op1, m_ZExt(m_Shl(m_Power2(), m_Value())))) {
926 if (match(N, m_ZExt(m_Value(X))) && match(D, m_ZExt(m_Value(Y))) &&
926 if (match(N, m_ZExt(m_Value(X))) && match(D, m_ZExt(m_Value(Y))) &&
935 if ((match(N, m_OneUse(m_ZExt(m_Value(X)))) && match(D, m_Constant(C))) ||
936 (match(D, m_OneUse(m_ZExt(m_Value(X)))) && match(N, m_Constant(C)))) {
lib/Transforms/InstCombine/InstCombineSelect.cpp 859 if (match(Count, m_ZExt(m_Value(V))) ||
950 if (match(TrueVal, m_ZExt(m_Specific(CmpLHS))) && ZextRHS == FalseVal) {
953 } else if (match(FalseVal, m_ZExt(m_Specific(CmpLHS))) &&
lib/Transforms/InstCombine/InstCombineShifts.cpp 872 if (match(Op0, m_OneUse(m_ZExt(m_Value(X))))) {
952 if (match(Op0, m_ZExt(m_Value(X))) && X->getType()->isIntOrIntVectorTy(1)) {
1035 if (match(Op0, m_OneUse(m_ZExt(m_Value(X)))) &&
1187 if (match(Op0, m_Shl(m_ZExt(m_Value(X)), m_Specific(Op1))) &&
lib/Transforms/InstCombine/InstructionCombining.cpp 1576 if (!IsSext && !match(Op0, m_ZExt(m_Value(X))))
lib/Transforms/Vectorize/SLPVectorizer.cpp 3313 if (!match(ZextLoad, m_ZExt(m_Load(m_Value(LoadPtr)))))
unittests/IR/PatternMatch.cpp 485 EXPECT_FALSE(m_ZExt(m_One()).match(One32));
486 EXPECT_TRUE(m_ZExt(m_One()).match(One64Z));
487 EXPECT_FALSE(m_ZExt(m_One()).match(One64S));