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()
1112 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1113 const OperandMatcher &OtherOM = Rule.getOperandMatcher(MatchingName); in emitPredicateOpcodes()
1114 unsigned OtherInsnVarID = Rule.getInsnVarID(OtherOM.getInstructionMatcher()); in emitPredicateOpcodes()
1147 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1157 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1168 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1179 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1190 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1212 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1224 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1233 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1242 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1254 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1264 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1276 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1287 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1305 TempTypeIdx OperandMatcher::getTempTypeIdx(RuleMatcher &Rule) { in getTempTypeIdx() argument
1309 TTIdx = Rule.getNextTempTypeIdx(); in getTempTypeIdx()
1318 RuleMatcher &Rule) { in emitPredicateOpcodes() argument
1330 emitPredicateListOpcodes(Table, Rule); in emitPredicateOpcodes()
1419 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1468 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1486 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1505 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1523 RuleMatcher &Rule) const { in emitPredicateOpcodes()
1542 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1567 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1586 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1600 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1624 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1643 MatchTable &Table, RuleMatcher &Rule) const { in emitPredicateOpcodes()
1658 Rule.defineOperand(SymbolicName, *Operands.back()); in addOperand()
1678 Rule.definePhysRegOperand(Reg, *OM); in addPhysRegInput()
1684 RuleMatcher &Rule) { in emitPredicateOpcodes() argument
1687 .emitPredicateOpcodes(Table, Rule); in emitPredicateOpcodes()
1693 Rule); in emitPredicateOpcodes()
1697 Operand->emitPredicateOpcodes(Table, Rule); in emitPredicateOpcodes()
1703 Rule); in emitPredicateOpcodes()
1786 RuleMatcher &Rule) const { in emitCaptureOpcodes()
1820 RuleMatcher &Rule) const { in emitRenderOpcodes()
1821 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
1822 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1835 RuleMatcher &Rule) const { in emitRenderOpcodes()
1836 const OperandMatcher &Operand = Rule.getPhysRegOperandMatcher(PhysReg); in emitRenderOpcodes()
1837 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1850 RuleMatcher &Rule) const { in emitRenderOpcodes()
1851 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
1852 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1872 RuleMatcher &Rule) const { in emitRenderOpcodes()
1873 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes()
1874 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
1887 RuleMatcher &Rule) const { in emitRenderOpcodes()
1888 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes()
1889 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
1901 RuleMatcher &Rule) const { in emitRenderOpcodes()
1902 const OperandMatcher &Operand = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
1903 unsigned OldInsnVarID = Rule.getInsnVarID(Operand.getInstructionMatcher()); in emitRenderOpcodes()
1919 RuleMatcher &Rule) const { in emitRenderOpcodes()
1947 RuleMatcher &Rule) const { in emitRenderOpcodes()
1993 RuleMatcher &Rule) const { in emitRenderOpcodes()
2002 emitAddImm(Table, Rule, InsnID, Imm); in emitRenderOpcodes()
2008 RuleMatcher &Rule) const { in emitRenderOpcodes()
2009 ImmRenderer::emitAddImm(Table, Rule, InsnID, SubRegIdx->EnumValue, in emitRenderOpcodes()
2016 RuleMatcher &Rule) const { in emitRenderOpcodes()
2036 RuleMatcher &Rule) const { in emitRenderOpcodes()
2037 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes()
2038 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
2052 RuleMatcher &Rule) const { in emitRenderOpcodes()
2053 const OperandMatcher &OpdMatcher = Rule.getOperandMatcher(SymbolicName); in emitRenderOpcodes()
2069 RuleMatcher &Rule) const { in emitActionOpcodes()
2076 bool BuildMIAction::canMutate(RuleMatcher &Rule, in canMutate() argument
2087 Rule.getOperandMatcher(Copy->getSymbolicName()); in canMutate()
2098 void BuildMIAction::chooseInsnToMutate(RuleMatcher &Rule) { in chooseInsnToMutate() argument
2099 for (auto *MutateCandidate : Rule.mutatable_insns()) { in chooseInsnToMutate()
2100 if (canMutate(Rule, MutateCandidate)) { in chooseInsnToMutate()
2102 Rule.reserveInsnMatcherForMutation(MutateCandidate); in chooseInsnToMutate()
2110 RuleMatcher &Rule) const { in emitActionOpcodes()
2136 assert(canMutate(Rule, Matched) && in emitActionOpcodes()
2139 unsigned RecycleInsnID = Rule.getInsnVarID(*Matched); in emitActionOpcodes()
2177 Rule.tryEraseInsnID(RecycleInsnID); in emitActionOpcodes()
2189 Renderer->emitRenderOpcodes(Table, Rule); in emitActionOpcodes()
2214 for (const auto &IDMatcherPair : Rule.defined_insn_vars()) in emitActionOpcodes()
2234 RuleMatcher &Rule) const { in emitActionOpcodes()
2243 void EraseInstAction::emitActionOpcodes(MatchTable &Table, RuleMatcher &Rule, in emitActionOpcodes() argument
2246 if (!Rule.tryEraseInsnID(InsnID)) in emitActionOpcodes()
2255 RuleMatcher &Rule) const { in emitActionOpcodes()
2256 emitActionOpcodes(Table, Rule, InsnID); in emitActionOpcodes()
2262 RuleMatcher &Rule) const { in emitAdditionalPredicates()
2277 RuleMatcher &Rule) const { in emitActionOpcodes()
2302 MatchTable &Table, RuleMatcher &Rule) const { in emitActionOpcodes()
2313 RuleMatcher &Rule) const { in emitActionOpcodes()