Lines Matching refs:TreePatternNode

35   class TreePatternNode;  variable
216 bool ApplyTypeConstraint(TreePatternNode *N, const SDNodeInfo &NodeInfo,
260 bool ApplyTypeConstraints(TreePatternNode *N, TreePattern &TP) const { in ApplyTypeConstraints()
322 class TreePatternNode {
348 std::vector<TreePatternNode*> Children;
350 TreePatternNode(Record *Op, const std::vector<TreePatternNode*> &Ch, in TreePatternNode() function
355 TreePatternNode(Init *val, unsigned NumResults) // leaf ctor in TreePatternNode() function
359 ~TreePatternNode();
391 TreePatternNode *getChild(unsigned N) const { return Children[N]; } in getChild()
392 void setChild(unsigned i, TreePatternNode *N) { in setChild()
397 bool hasChild(const TreePatternNode *N) const { in hasChild()
456 TreePatternNode *clone() const;
465 bool isIsomorphicTo(const TreePatternNode *N,
471 TreePatternNode*> &ArgMap);
476 TreePatternNode *InlinePatternFragments(TreePattern &TP);
518 inline raw_ostream &operator<<(raw_ostream &OS, const TreePatternNode &TPN) {
531 std::vector<TreePatternNode*> Trees;
535 StringMap<SmallVector<TreePatternNode*,1> > NamedNodes;
571 TreePattern(Record *TheRec, TreePatternNode *Pat, bool isInput,
576 const std::vector<TreePatternNode*> &getTrees() const { return Trees; } in getTrees()
578 TreePatternNode *getTree(unsigned i) const { return Trees[i]; } in getTree()
579 TreePatternNode *getOnlyTree() const { in getOnlyTree()
584 const StringMap<SmallVector<TreePatternNode*,1> > &getNamedNodesMap() { in getNamedNodesMap()
615 bool InferAllTypes(const StringMap<SmallVector<TreePatternNode*,1> >
632 TreePatternNode *ParseTreePattern(Init *DI, StringRef OpName);
634 void ComputeNamedNodes(TreePatternNode *N);
640 std::vector<TreePatternNode*> DefaultOps;
648 TreePatternNode *ResultPattern;
663 void setResultPattern(TreePatternNode *R) { ResultPattern = R; } in setResultPattern()
680 TreePatternNode *getResultPattern() const { return ResultPattern; } in getResultPattern()
688 TreePatternNode *src, TreePatternNode *dst, in PatternToMatch()
696 TreePatternNode *SrcPattern; // Source pattern to match.
697 TreePatternNode *DstPattern; // Resulting pattern.
704 TreePatternNode *getSrcPattern() const { return SrcPattern; } in getSrcPattern()
705 TreePatternNode *getDstPattern() const { return DstPattern; } in getDstPattern()
855 void FindPatternInputsAndOutputs(TreePattern *I, TreePatternNode *Pat,
857 TreePatternNode*> &InstInputs,
859 TreePatternNode*> &InstResults,