Lines Matching defs:Pattern

56   const PatternToMatch &Pattern;
59 /// PatWithNoTypes - This is a clone of Pattern.getSrcPattern() that starts
150 : Pattern(pattern), CGP(cgp), NextRecordedOperandNo(0), TheMatcher(nullptr),
165 PatWithNoTypes = Pattern.getSrcPattern().clone();
197 // Pattern Match Generation
209 if (&N == &Pattern.getSrcPattern()) {
284 if (&N == &Pattern.getSrcPattern()) {
345 if (&N == &Pattern.getSrcPattern())
407 const TreePatternNode &Root = Pattern.getSrcPattern();
433 if (N.NodeHasProperty(SDNPOutGlue, CGP) && &N != &Pattern.getSrcPattern()) {
557 Pattern.getSrcPattern().getComplexPatternInfo(CGP)) {
560 "Complex Pattern must specify what it can match");
571 EmitMatchCode(Pattern.getSrcPattern(), *PatWithNoTypes);
575 std::string PredicateCheck = Pattern.getPredicateCheck();
781 bool isRoot = &N == &Pattern.getDstPattern();
786 const TreePatternNode &SrcPat = Pattern.getSrcPattern();
907 if (isRoot && !Pattern.getDstRegs().empty()) {
914 for (Record *Reg : Pattern.getDstRegs()) {
925 if (isRoot && Pattern.getSrcPattern().NodeHasProperty(SDNPVariadic, CGP))
926 NumFixedArityOperands = Pattern.getSrcPattern().getNumChildren();
936 Pattern.getSrcPattern().TreeHasProperty(SDNPMemOperand, CGP);
941 numNodesThatMayLoadOrStore(Pattern.getDstPattern(), CGP);
951 if (Pattern.getSrcPattern().TreeHasProperty(SDNPHasChain, CGP)) {
1031 EmitResultOperand(Pattern.getDstPattern(), Ops);
1039 unsigned NumSrcResults = Pattern.getSrcPattern().getNumTypes();
1042 if (!Pattern.getDstRegs().empty()) {
1046 const TreePatternNode &DstPat = Pattern.getDstPattern();
1055 for (Record *Reg : Pattern.getDstRegs()) {
1065 for (unsigned ResNo = 0; ResNo < Pattern.getDstPattern().getNumResults();
1067 Results[ResNo] = Ops[Pattern.getDstPattern().getResultIndex(ResNo)];
1071 AddMatcher(new CompleteMatchMatcher(Results, Pattern));
1076 Matcher *llvm::ConvertPatternToMatcher(const PatternToMatch &Pattern,
1079 MatcherGen Gen(Pattern, CGP);
1090 // If the match succeeds, then we generate Pattern.