• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.10/llvmCore-3425.0.34/utils/TableGen/

Lines Matching refs:pattern

86     /// physreg input to the pattern.  The first elt is the Register node, the
87 /// second is the recorded slot number the input pattern match saved it in.
97 MatcherGen(const PatternToMatch &pattern, const CodeGenDAGPatterns &cgp);
125 /// GetInstPatternNode - Get the pattern for an instruction.
143 MatcherGen::MatcherGen(const PatternToMatch &pattern,
145 : Pattern(pattern), CGP(cgp), NextRecordedOperandNo(0),
147 // We need to produce the matcher tree for the patterns source pattern. To do
153 // To figure out the fewest number of type checks needed, clone the pattern,
154 // remove the types, then perform type inference on the pattern as a whole.
166 /// InferPossibleTypes - As we emit the pattern, we end up generating type
171 // TP - Get *SOME* tree pattern, we don't care which. It is only used for
253 errs() << "We expect complex pattern uses to have names: " << *N << "\n";
288 // If this is at the root of the pattern, we emit a redundant
325 // Remember all of the input chains our pattern will match.
328 // Don't look at the input chain when matching the tree pattern to the
354 if (N != Root) { // Not the root of the pattern.
389 // Remember all of the nodes with output glue our pattern will match.
394 // glue, capture it as the glue input of the pattern.
424 // we already saw this in the pattern, emit code to verify dagness.
456 /// pattern for the specified Variant. If the variant is invalid this returns
459 // If the root of the pattern is a ComplexPattern and if it is specified to
474 // Emit the matcher for the pattern structure and types.
477 // If the pattern has a predicate on it (e.g. only enabled when a subtarget
495 "Complex pattern should have a name and slot");
509 // If the complex pattern has a chain, then we need to keep track of the
536 // A reference to a complex pattern gets all of the results of the complex
537 // pattern's match.
622 /// GetInstPatternNode - Get the pattern for an instruction.
628 // FIXME2?: Assume actual pattern comes before "implicit".
681 // If we can, get the pattern for the instruction we're generating. We derive
682 // a variety of information from this pattern, such as whether it has a chain.
694 // regardless of whether they happen to have an internal pattern saying so.
709 // FIXME2: this is checking the entire pattern, not just the node in
718 // Loop over all of the operands of the instruction pattern, emitting code
778 // If this is the root instruction of a pattern that has physical registers in
779 // its result pattern, add output VTs for them. For example, X86 has:
797 // If this is the root of the pattern and the pattern we're matching includes
805 // If this is the root node and multiple matched nodes in the input pattern
866 // This is something selected from the pattern we matched.
879 throw std::string("Unknown node in result pattern!");
890 // Codegen the root of the result pattern, capturing the resulting values.
894 // At this point, we have however many values the result pattern produces.
895 // However, the input pattern might not need all of these. If there are
902 // If the pattern also has (implicit) results, count them as well.
926 // If the matched pattern covers nodes which define a glue result, emit a node
936 /// ConvertPatternToMatcher - Create the matcher for the specified pattern with