Lines Matching refs:Matcher
53 SmallVector<unsigned, Matcher::HighestKind + 1> OpcodeCounts;
84 MatcherTableEmitter(const Matcher *TheMatcher, const CodeGenDAGPatterns &cgp) in MatcherTableEmitter()
85 : CGP(cgp), OpcodeCounts(Matcher::HighestKind + 1, 0) { in MatcherTableEmitter()
94 std::function<void(const Matcher *)> Statistic = [&](const Matcher *N) { in MatcherTableEmitter()
169 unsigned EmitMatcherList(const Matcher *N, const unsigned Indent,
172 unsigned SizeMatcherList(Matcher *N, raw_ostream &OS);
176 void EmitHistogram(const Matcher *N, raw_ostream &OS);
184 unsigned SizeMatcher(Matcher *N, raw_ostream &OS);
186 unsigned EmitMatcher(const Matcher *N, const unsigned Indent,
292 unsigned MatcherTableEmitter::SizeMatcherList(Matcher *N, raw_ostream &OS) { in SizeMatcherList()
304 unsigned MatcherTableEmitter::SizeMatcher(Matcher *N, raw_ostream &OS) { in SizeMatcher()
311 case Matcher::Scope: { in SizeMatcher()
327 case Matcher::SwitchOpcode: in SizeMatcher()
328 case Matcher::SwitchType: { in SizeMatcher()
336 Matcher *Child; in SizeMatcher()
419 unsigned MatcherTableEmitter::EmitMatcher(const Matcher *N, in EmitMatcher()
426 case Matcher::Scope: { in EmitMatcher()
469 case Matcher::RecordNode: in EmitMatcher()
477 case Matcher::RecordChild: in EmitMatcher()
485 case Matcher::RecordMemRef: in EmitMatcher()
489 case Matcher::CaptureGlueInput: in EmitMatcher()
493 case Matcher::MoveChild: { in EmitMatcher()
504 case Matcher::MoveSibling: { in EmitMatcher()
515 case Matcher::MoveParent: in EmitMatcher()
519 case Matcher::CheckSame: in EmitMatcher()
524 case Matcher::CheckChildSame: in EmitMatcher()
529 case Matcher::CheckPatternPredicate: { in EmitMatcher()
543 case Matcher::CheckPredicate: { in EmitMatcher()
570 case Matcher::CheckOpcode: in EmitMatcher()
575 case Matcher::SwitchOpcode: in EmitMatcher()
576 case Matcher::SwitchType: { in EmitMatcher()
595 const Matcher *Child; in EmitMatcher()
642 case Matcher::CheckType: in EmitMatcher()
659 case Matcher::CheckChildType: { in EmitMatcher()
674 case Matcher::CheckInteger: { in EmitMatcher()
681 case Matcher::CheckChildInteger: { in EmitMatcher()
689 case Matcher::CheckCondCode: in EmitMatcher()
694 case Matcher::CheckChild2CondCode: in EmitMatcher()
699 case Matcher::CheckValueType: in EmitMatcher()
704 case Matcher::CheckComplexPat: { in EmitMatcher()
728 case Matcher::CheckAndImm: { in EmitMatcher()
736 case Matcher::CheckOrImm: { in EmitMatcher()
744 case Matcher::CheckFoldableChainNode: in EmitMatcher()
748 case Matcher::CheckImmAllOnesV: in EmitMatcher()
752 case Matcher::CheckImmAllZerosV: in EmitMatcher()
756 case Matcher::EmitInteger: { in EmitMatcher()
777 case Matcher::EmitStringInteger: { in EmitMatcher()
796 case Matcher::EmitRegister: { in EmitMatcher()
797 const EmitRegisterMatcher *Matcher = cast<EmitRegisterMatcher>(N); in EmitMatcher() local
798 const CodeGenRegister *Reg = Matcher->getReg(); in EmitMatcher()
799 MVT::SimpleValueType VT = Matcher->getVT(); in EmitMatcher()
830 case Matcher::EmitConvertToTarget: { in EmitMatcher()
840 case Matcher::EmitMergeInputChains: { in EmitMatcher()
856 case Matcher::EmitCopyToReg: { in EmitMatcher()
878 case Matcher::EmitNodeXForm: { in EmitMatcher()
888 case Matcher::EmitNode: in EmitMatcher()
889 case Matcher::MorphNodeTo: { in EmitMatcher()
998 case Matcher::CompleteMatch: { in EmitMatcher()
1037 unsigned MatcherTableEmitter::EmitMatcherList(const Matcher *N, in EmitMatcherList()
1202 static StringRef getOpcodeString(Matcher::KindTy Kind) { in getOpcodeString()
1204 case Matcher::Scope: in getOpcodeString()
1206 case Matcher::RecordNode: in getOpcodeString()
1208 case Matcher::RecordChild: in getOpcodeString()
1210 case Matcher::RecordMemRef: in getOpcodeString()
1212 case Matcher::CaptureGlueInput: in getOpcodeString()
1214 case Matcher::MoveChild: in getOpcodeString()
1216 case Matcher::MoveSibling: in getOpcodeString()
1218 case Matcher::MoveParent: in getOpcodeString()
1220 case Matcher::CheckSame: in getOpcodeString()
1222 case Matcher::CheckChildSame: in getOpcodeString()
1224 case Matcher::CheckPatternPredicate: in getOpcodeString()
1226 case Matcher::CheckPredicate: in getOpcodeString()
1228 case Matcher::CheckOpcode: in getOpcodeString()
1230 case Matcher::SwitchOpcode: in getOpcodeString()
1232 case Matcher::CheckType: in getOpcodeString()
1234 case Matcher::SwitchType: in getOpcodeString()
1236 case Matcher::CheckChildType: in getOpcodeString()
1238 case Matcher::CheckInteger: in getOpcodeString()
1240 case Matcher::CheckChildInteger: in getOpcodeString()
1242 case Matcher::CheckCondCode: in getOpcodeString()
1244 case Matcher::CheckChild2CondCode: in getOpcodeString()
1246 case Matcher::CheckValueType: in getOpcodeString()
1248 case Matcher::CheckComplexPat: in getOpcodeString()
1250 case Matcher::CheckAndImm: in getOpcodeString()
1252 case Matcher::CheckOrImm: in getOpcodeString()
1254 case Matcher::CheckFoldableChainNode: in getOpcodeString()
1256 case Matcher::CheckImmAllOnesV: in getOpcodeString()
1258 case Matcher::CheckImmAllZerosV: in getOpcodeString()
1260 case Matcher::EmitInteger: in getOpcodeString()
1262 case Matcher::EmitStringInteger: in getOpcodeString()
1264 case Matcher::EmitRegister: in getOpcodeString()
1266 case Matcher::EmitConvertToTarget: in getOpcodeString()
1268 case Matcher::EmitMergeInputChains: in getOpcodeString()
1270 case Matcher::EmitCopyToReg: in getOpcodeString()
1272 case Matcher::EmitNode: in getOpcodeString()
1274 case Matcher::MorphNodeTo: in getOpcodeString()
1276 case Matcher::EmitNodeXForm: in getOpcodeString()
1278 case Matcher::CompleteMatch: in getOpcodeString()
1285 void MatcherTableEmitter::EmitHistogram(const Matcher *M, raw_ostream &OS) { in EmitHistogram()
1292 << left_justify(getOpcodeString((Matcher::KindTy)i), HistOpcWidth) in EmitHistogram()
1298 void llvm::EmitMatcherTable(Matcher *TheMatcher, const CodeGenDAGPatterns &CGP, in EmitMatcherTable()