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

Lines Matching refs:Rule

668   for (Matcher *Rule : Rules)
669 Rule->emit(Table);
1100 RuleMatcher &Rule) const = 0;
1164 RuleMatcher &Rule) const override;
1215 RuleMatcher &Rule) const override {
1250 RuleMatcher &Rule) const override {
1281 RuleMatcher &Rule) const override {
1316 RuleMatcher &Rule) const override {
1337 RuleMatcher &Rule) const override {
1354 RuleMatcher &Rule) const override {
1381 RuleMatcher &Rule) const override {
1410 RuleMatcher &Rule) const override {
1438 RuleMatcher &Rule) const override {
1468 RuleMatcher &Rule) const override {
1529 void emitPredicateOpcodes(MatchTable &Table, RuleMatcher &Rule) {
1541 emitPredicateListOpcodes(Table, Rule);
1679 RuleMatcher &Rule) const override {
1738 RuleMatcher &Rule) const override {
1794 RuleMatcher &Rule) const override {
1835 RuleMatcher &Rule) const override {
1871 RuleMatcher &Rule) const override {
1902 RuleMatcher &Rule) const override {
1941 RuleMatcher &Rule) const override {
1983 RuleMatcher &Rule) const override {
2017 RuleMatcher &Rule) const override {
2036 RuleMatcher &Rule;
2052 InstructionMatcher(RuleMatcher &Rule, StringRef SymbolicName)
2053 : Rule(Rule), SymbolicName(SymbolicName) {
2056 InsnVarID = Rule.implicitlyDefineInsnVar(*this);
2067 RuleMatcher &getRuleMatcher() const { return Rule; }
2077 Rule.defineOperand(SymbolicName, *Operands.back());
2097 Rule.definePhysRegOperand(Reg, *OM);
2126 void emitPredicateOpcodes(MatchTable &Table, RuleMatcher &Rule) {
2129 .emitPredicateOpcodes(Table, Rule);
2131 emitPredicateListOpcodes(Table, Rule);
2134 Operand->emitPredicateOpcodes(Table, Rule);
2229 RuleMatcher &Rule, StringRef SymbolicName)
2231 InsnMatcher(new InstructionMatcher(Rule, SymbolicName)) {}
2239 void emitCaptureOpcodes(MatchTable &Table, RuleMatcher &Rule) const {
2251 RuleMatcher &Rule) const override {
2252 emitCaptureOpcodes(Table, Rule);
2253 InsnMatcher->emitPredicateOpcodes(Table, Rule);
2335 RuleMatcher &Rule) const = 0;
2359 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2360 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName);
2361 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher());
2390 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2391 const OperandMatcher &Operand = Rule.getPhysRegOperandMatcher(PhysReg);
2392 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher());
2426 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2427 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName);
2428 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher());
2463 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2464 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName);
2465 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher);
2494 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2495 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName);
2496 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher);
2528 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2529 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName);
2530 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher());
2560 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2599 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2626 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2647 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2686 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2716 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2717 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName);
2718 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher);
2747 void emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2748 const OperandMatcher &OpdMatcher = Rule.getOperandMatcher(SymbolicName);
2773 RuleMatcher &Rule) const = 0;
2784 void emitActionOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2799 bool canMutate(RuleMatcher &Rule, const InstructionMatcher *Insn) const {
2808 const OperandMatcher &OM = Rule.getOperandMatcher(Copy->getSymbolicName());
2826 void chooseInsnToMutate(RuleMatcher &Rule) {
2827 for (auto *MutateCandidate : Rule.mutatable_insns()) {
2828 if (canMutate(Rule, MutateCandidate)) {
2830 Rule.reserveInsnMatcherForMutation(MutateCandidate);
2844 void emitActionOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2846 assert(canMutate(Rule, Matched) &&
2849 unsigned RecycleInsnID = Rule.getInsnVarID(*Matched);
2889 Renderer->emitRenderOpcodes(Table, Rule);
2903 for (const auto &IDMatcherPair : Rule.defined_insn_vars())
2930 void emitActionOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2949 void emitActionOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
2971 void emitActionOpcodes(MatchTable &Table, RuleMatcher &Rule) const override {
3102 << MatchTable::Comment(("Rule ID " + Twine(RuleID) + " //").str())
3246 RuleMatcher &Rule) const {
3247 const OperandMatcher &OtherOM = Rule.getOperandMatcher(MatchingName);
3248 unsigned OtherInsnVarID = Rule.getInsnVarID(OtherOM.getInstructionMatcher());
3297 // Rule coverage information.
3310 createAndImportSelDAGMatcher(RuleMatcher &Rule,
3315 Error importChildMatcher(RuleMatcher &Rule, InstructionMatcher &InsnMatcher,
3336 importExplicitUseRenderer(action_iterator InsertPt, RuleMatcher &Rule,
3498 RuleMatcher &Rule, InstructionMatcher &InsnMatcher,
3792 importChildMatcher(Rule, InsnMatcher, SrcChild, OperandIsAPointer,
3832 RuleMatcher &Rule, InstructionMatcher &InsnMatcher,
3888 if (auto Error = Rule.defineComplexSubOperand(SubOperand->getName(),
3910 Rule, InsnOperand.getInsnMatcher(), SrcChild, TempOpIdx);
3982 action_iterator InsertPt, RuleMatcher &Rule, BuildMIAction &DstMIBuilder,
3985 const auto &SubOperand = Rule.getComplexSubOperand(DstChild->getName());
4054 unsigned TempRegID = Rule.allocateTempRegID();
4055 InsertPt = Rule.insertAction<MakeTempRegisterAction>(
4060 ++InsertPt, Rule, DstChild, TempRegID);
4122 const OperandMatcher &OM = Rule.getOperandMatcher(DstChild->getName());
4996 for (Matcher *Rule : Rules) {
4998 if (CurrentGroup->addMatcher(*Rule))
5005 if (!CurrentGroup->addMatcher(*Rule))
5008 OptRules.push_back(Rule);
5021 for (Matcher &Rule : Rules)
5022 InputRules.push_back(&Rule);
5029 for (RuleMatcher &Rule : Rules) {
5030 const StringRef Opcode = Rule.getOpcode();
5046 for (Matcher *Rule : InputRules)
5047 Rule->optimize();
5053 for (Matcher *Rule : OptRules)
5054 Rule->optimize();
5158 for (const auto &Rule : Rules)
5159 MaxTemporaries = std::max(MaxTemporaries, Rule.countRendererFns());
5270 for (auto &Rule : Rules)
5271 FeatureBitsets.push_back(Rule.getRequiredFeatures());
5550 for (const auto &Rule : Matchers)
5551 if (!Rule->hasFirstCondition())