• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/utils/TableGen/

Lines Matching defs:Matchers

646 //===- Matchers -----------------------------------------------------------===//
678 std::vector<Matcher *> Matchers;
719 return make_range(Matchers.begin(), Matchers.end());
721 size_t size() const { return Matchers.size(); }
722 bool empty() const { return Matchers.empty(); }
750 std::vector<Matcher *> Matchers;
771 return make_range(Matchers.begin(), Matchers.end());
773 size_t size() const { return Matchers.size(); }
774 bool empty() const { return Matchers.empty(); }
810 MatchersTy Matchers;
861 : Matchers(), Actions(), InsnVariableIDs(), MutatableInsns(),
964 InstructionMatcher &insnmatchers_front() const { return *Matchers.front(); }
970 return make_range(Matchers.begin(), Matchers.end());
972 bool insnmatchers_empty() const { return Matchers.empty(); }
973 void insnmatchers_pop_front() { Matchers.erase(Matchers.begin()); }
2238 return Matchers.front()->getOpcode();
2242 return Matchers.front()->getNumOperands();
2246 InstructionMatcher &InsnMatcher = *Matchers.front();
3033 Matchers.emplace_back(new InstructionMatcher(*this, SymbolicName));
3034 MutatableInsns.insert(Matchers.back().get());
3035 return *Matchers.back();
3136 if (Matchers.empty())
3148 assert(Matchers.size() == 1 && "Cannot handle multi-root matchers yet");
3163 Matchers.front()->emitPredicateOpcodes(Table, *this);
3172 if (Pair.first == Matchers.front().get())
3242 if (Matchers.size() > B.Matchers.size())
3244 if (Matchers.size() < B.Matchers.size())
3247 for (auto Matcher : zip(Matchers, B.Matchers)) {
3259 Matchers.begin(), Matchers.end(), 0,
5198 auto F = Matchers.begin();
5200 auto E = Matchers.end();
5217 GlobalISelEmitter::optimizeRules<GroupMatcher>(Matchers, MatcherStorage)
5218 .swap(Matchers);
5219 GlobalISelEmitter::optimizeRules<SwitchMatcher>(Matchers, MatcherStorage)
5220 .swap(Matchers);
5657 const Matcher &Representative = **Matchers.begin();
5672 Matchers.push_back(&Candidate);
5681 Matcher &FirstRule = **Matchers.begin();
5684 for (const auto &Rule : Matchers)
5688 for (unsigned I = 1, E = Matchers.size(); I < E; ++I)
5689 if (!Matchers[I]->getFirstCondition().isIdentical(FirstCondition))
5693 for (unsigned I = 1, E = Matchers.size(); I < E; ++I)
5694 Matchers[I]->popFirstCondition();
5708 Table, *static_cast<RuleMatcher *>(*Matchers.begin()));
5710 for (const auto &M : Matchers)
5745 const Matcher &CaseRepresentative = **Matchers.begin();
5767 Matchers.push_back(&Candidate);
5773 assert(Values.size() == Matchers.size() && "Broken SwitchMatcher");
5777 std::stable_sort(Matchers.begin(), Matchers.end(),
5782 Condition = Matchers[0]->popFirstCondition();
5784 Matchers[I]->popFirstCondition();
5809 assert(Values.size() == Matchers.size() && "Broken SwitchMatcher");
5842 Matchers[I]->emit(Table);