Lines Matching defs:TreePatternNode
44 class TreePatternNode;
47 /// Shared pointer for TreePatternNode.
48 using TreePatternNodePtr = IntrusiveRefCntPtr<TreePatternNode>;
387 bool ApplyTypeConstraint(TreePatternNode &N, const SDNodeInfo &NodeInfo,
468 bool ApplyTypeConstraints(TreePatternNode &N, TreePattern &TP) const;
617 class TreePatternNode : public RefCountedBase<TreePatternNode> {
652 TreePatternNode(const Record *Op, std::vector<TreePatternNodePtr> Ch,
659 TreePatternNode(const Init *val, unsigned NumResults) // leaf ctor
730 const TreePatternNode &getChild(unsigned N) const {
733 TreePatternNode &getChild(unsigned N) { return *Children[N].get(); }
741 bool hasChild(const TreePatternNode *N) const {
820 bool isIsomorphicTo(const TreePatternNode &N,
866 inline raw_ostream &operator<<(raw_ostream &OS, const TreePatternNode &TPN) {
882 StringMap<SmallVector<TreePatternNode *, 1>> NamedNodes;
934 const StringMap<SmallVector<TreePatternNode *, 1>> &getNamedNodesMap() {
969 const StringMap<SmallVector<TreePatternNode *, 1>> *NamedTypes = nullptr);
985 void ComputeNamedNodes(TreePatternNode &N);
988 inline bool TreePatternNode::UpdateNodeType(unsigned ResNo,
996 inline bool TreePatternNode::UpdateNodeType(unsigned ResNo,
1004 inline bool TreePatternNode::UpdateNodeType(unsigned ResNo,
1083 TreePatternNode &getSrcPattern() const { return *SrcPattern; }
1085 TreePatternNode &getDstPattern() const { return *DstPattern; }
1270 inline bool SDNodeInfo::ApplyTypeConstraints(TreePatternNode &N,