Home | History | Annotate | Download | only in TableGen

Lines Matching refs:Variants

2027   // Generate variants.  For example, commutative patterns can match
3131 // Find the variants of all of our maximal children.
3207 std::vector<std::vector<TreePatternNode*> > Variants;
3208 Variants.push_back(ChildVariants[0]); // Intrinsic id.
3209 Variants.push_back(ChildVariants[2]);
3210 Variants.push_back(ChildVariants[1]);
3212 Variants.push_back(ChildVariants[i]);
3213 CombineChildVariants(N, Variants, OutVariants, CDP, DepVars);
3221 // GenerateVariants - Generate variants. For example, commutative patterns can
3224 DEBUG(errs() << "Generating instruction variants.\n");
3227 // generate variants of the instruction, through the exploitation of
3229 // the .td file having to contain tons of variants of instructions.
3232 // intentionally do not reconsider these. Any variants of added patterns have
3237 std::vector<TreePatternNode*> Variants;
3242 GenerateVariantsOf(PatternsToMatch[i].getSrcPattern(), Variants, *this,
3245 assert(!Variants.empty() && "Must create at least original variant!");
3246 Variants.erase(Variants.begin()); // Remove the original pattern.
3248 if (Variants.empty()) // No variants for this pattern.
3251 DEBUG(errs() << "FOUND VARIANTS OF: ";
3255 for (unsigned v = 0, e = Variants.size(); v != e; ++v) {
3256 TreePatternNode *Variant = Variants[v];