Lines Matching refs:Rule

121   for (Matcher *Rule : Rules) {  in optimizeRules()
123 if (CurrentGroup->addMatcher(*Rule)) in optimizeRules()
130 if (!CurrentGroup->addMatcher(*Rule)) in optimizeRules()
133 OptRules.push_back(Rule); in optimizeRules()
334 for (Matcher *Rule : Rules) in buildTable()
335 Rule->emit(Table); in buildTable()
491 for (const auto &Rule : Matchers) in finalize() local
492 if (!Rule->hasFirstCondition()) in finalize()
1144 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1145 const OperandMatcher &OtherOM = Rule.getOperandMatcher(MatchingName); in emitPredicateOpcodes()
1146 unsigned OtherInsnVarID = Rule.getInsnVarID(OtherOM.getInstructionMatcher()); in emitPredicateOpcodes()
1179 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1193 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1204 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1215 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1226 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1248 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1265 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1274 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1283 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1295 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1305 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1317 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1328 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1346 TempTypeIdx OperandMatcher::getTempTypeIdx(RuleMatcher &Rule) { in getTempTypeIdx() argument
1350 TTIdx = Rule.getNextTempTypeIdx(); in getTempTypeIdx()
1359 RuleMatcher &Rule) { in emitPredicateOpcodes() argument
1371 emitPredicateListOpcodes(Table, Rule); in emitPredicateOpcodes()
1459 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1508 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1526 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1545 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1563 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1582 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1608 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1630 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1644 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1668 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1687 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1702 Rule.defineOperand(SymbolicName, *Operands.back()); in addOperand()
1722 Rule.definePhysRegOperand(Reg, *OM); in addPhysRegInput()
1728 RuleMatcher &Rule) { in emitPredicateOpcodes() argument
1731 .emitPredicateOpcodes(Table, Rule); in emitPredicateOpcodes()
1737 Rule); in emitPredicateOpcodes()
1741 Operand->emitPredicateOpcodes(Table, Rule); in emitPredicateOpcodes()
1747 Rule); in emitPredicateOpcodes()
1830 RuleMatcher &Rule) const { in emitCaptureOpcodes()
1863 void CopyRenderer::emitRenderOpcodes(MatchTable &Table, RuleMatcher &Rule, in emitRenderOpcodes() argument
1880 RuleMatcher &Rule) const { in emitRenderOpcodes()
1881 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
1882 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1883 emitRenderOpcodes(Table, Rule, NewInsnID, OldInsnVarID, Operand.getOpIdx(), in emitRenderOpcodes()
1890 RuleMatcher &Rule) const { in emitRenderOpcodes()
1891 const OperandMatcher &Operand = Rule.getPhysRegOperandMatcher(PhysReg); in emitRenderOpcodes()
1892 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1893 CopyRenderer::emitRenderOpcodes(Table, Rule, NewInsnID, OldInsnVarID, in emitRenderOpcodes()
1900 RuleMatcher &Rule) const { in emitRenderOpcodes()
1901 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
1902 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1922 RuleMatcher &Rule) const { in emitRenderOpcodes()
1923 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes()
1924 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
1937 RuleMatcher &Rule) const { in emitRenderOpcodes()
1938 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes()
1939 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
1951 RuleMatcher &Rule) const { in emitRenderOpcodes()
1952 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
1953 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1969 RuleMatcher &Rule) const { in emitRenderOpcodes()
1997 RuleMatcher &Rule) const { in emitRenderOpcodes()
2043 RuleMatcher &Rule) const { in emitRenderOpcodes()
2052 emitAddImm(Table, Rule, InsnID, Imm); in emitRenderOpcodes()
2058 RuleMatcher &Rule) const { in emitRenderOpcodes()
2059 ImmRenderer::emitAddImm(Table, Rule, InsnID, SubRegIdx->EnumValue, in emitRenderOpcodes()
2066 RuleMatcher &Rule) const { in emitRenderOpcodes()
2086 RuleMatcher &Rule) const { in emitRenderOpcodes()
2096 RuleMatcher &Rule) const { in emitRenderOpcodes()
2097 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes()
2098 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
2112 RuleMatcher &Rule) const { in emitRenderOpcodes()
2113 const OperandMatcher &OpdMatcher = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
2128 bool BuildMIAction::canMutate(RuleMatcher &Rule, in canMutate() argument
2139 Rule.getOperandMatcher(Copy->getSymbolicName()); in canMutate()
2150 void BuildMIAction::chooseInsnToMutate(RuleMatcher &Rule) { in chooseInsnToMutate() argument
2151 for (auto *MutateCandidate : Rule.mutatable_insns()) { in chooseInsnToMutate()
2152 if (canMutate(Rule, MutateCandidate)) { in chooseInsnToMutate()
2154 Rule.reserveInsnMatcherForMutation(MutateCandidate); in chooseInsnToMutate()
2162 RuleMatcher &Rule) const { in emitActionOpcodes()
2188 assert(canMutate(Rule, Matched) && in emitActionOpcodes()
2191 unsigned RecycleInsnID = Rule.getInsnVarID(*Matched); in emitActionOpcodes()
2229 Rule.tryEraseInsnID(RecycleInsnID); in emitActionOpcodes()
2248 Renderer->emitRenderOpcodes(Table, Rule); in emitActionOpcodes()
2273 for (const auto &IDMatcherPair : Rule.defined_insn_vars()) in emitActionOpcodes()
2293 RuleMatcher &Rule) const { in emitActionOpcodes()
2303 RuleMatcher &Rule) const { in emitActionOpcodes()
2305 if (!Rule.tryEraseInsnID(InsnID)) in emitActionOpcodes()
2314 RuleMatcher &Rule) const { in emitActionOpcodesAndDone()
2316 emitActionOpcodes(Table, Rule); in emitActionOpcodesAndDone()
2320 if (!Rule.tryEraseInsnID(0)) in emitActionOpcodesAndDone()
2331 RuleMatcher &Rule) const { in emitAdditionalPredicates()
2346 RuleMatcher &Rule) const { in emitActionOpcodes()
2371 MatchTable &Table, RuleMatcher &Rule) const { in emitActionOpcodes()
2382 RuleMatcher &Rule) const { in emitActionOpcodes()