Lines Matching refs:TreePatternNode
1415 static bool isImmAllOnesAllZerosMatch(const TreePatternNode *P) { in isImmAllOnesAllZerosMatch()
1429 static unsigned getPatternSize(const TreePatternNode *P, in getPatternSize()
1450 const TreePatternNode *Child = P->getChild(i); in getPatternSize()
1593 static TreePatternNode *getOperandNum(unsigned OpNo, TreePatternNode *N, in getOperandNum()
1619 bool SDTypeConstraint::ApplyTypeConstraint(TreePatternNode *N, in ApplyTypeConstraint()
1626 TreePatternNode *NodeToApply = getOperandNum(OperandNo, N, NodeInfo, ResNo); in ApplyTypeConstraint()
1647 TreePatternNode *OtherNode = in ApplyTypeConstraint()
1670 TreePatternNode *OtherNode = in ApplyTypeConstraint()
1679 TreePatternNode *BigOperand = in ApplyTypeConstraint()
1687 TreePatternNode *VecOperand = in ApplyTypeConstraint()
1697 TreePatternNode *BigVecOperand = in ApplyTypeConstraint()
1711 TreePatternNode *OtherNode = in ApplyTypeConstraint()
1719 TreePatternNode *OtherNode = in ApplyTypeConstraint()
1732 bool TreePatternNode::UpdateNodeTypeFromInst(unsigned ResNo, in UpdateNodeTypeFromInst()
1764 bool TreePatternNode::ContainsUnresolvedType(TreePattern &TP) const { in ContainsUnresolvedType()
1774 bool TreePatternNode::hasProperTypeByHwMode() const { in hasProperTypeByHwMode()
1784 bool TreePatternNode::hasPossibleType() const { in hasPossibleType()
1794 bool TreePatternNode::setDefaultMode(unsigned Mode) { in setDefaultMode()
1929 void TreePatternNode::print(raw_ostream &OS) const { in print()
1966 void TreePatternNode::dump() const { in dump()
1977 bool TreePatternNode::isIsomorphicTo(const TreePatternNode *N, in isIsomorphicTo()
2013 TreePatternNodePtr TreePatternNode::clone() const { in clone()
2016 New = makeIntrusiveRefCnt<TreePatternNode>(getLeafValue(), getNumTypes()); in clone()
2022 New = makeIntrusiveRefCnt<TreePatternNode>( in clone()
2035 void TreePatternNode::RemoveAllTypes() { in RemoveAllTypes()
2046 void TreePatternNode::SubstituteFormalArguments( in SubstituteFormalArguments()
2051 TreePatternNode *Child = getChild(i); in SubstituteFormalArguments()
2076 void TreePatternNode::InlinePatternFragments( in InlinePatternFragments()
2124 TreePatternNodePtr R = makeIntrusiveRefCnt<TreePatternNode>( in InlinePatternFragments()
2337 const CodeGenIntrinsic *TreePatternNode::
2351 TreePatternNode::getComplexPatternInfo(const CodeGenDAGPatterns &CGP) const { in getComplexPatternInfo()
2366 unsigned TreePatternNode::getNumMIResults(const CodeGenDAGPatterns &CGP) const { in getNumMIResults()
2386 bool TreePatternNode::NodeHasProperty(SDNP Property, in NodeHasProperty()
2414 bool TreePatternNode::TreeHasProperty(SDNP Property, in TreeHasProperty()
2427 TreePatternNode::isCommutativeIntrinsic(const CodeGenDAGPatterns &CDP) const { in isCommutativeIntrinsic()
2433 static bool isOperandClass(const TreePatternNode *N, StringRef Class) { in isOperandClass()
2462 bool TreePatternNode::ApplyTypeConstraints(TreePattern &TP, bool NotRegisters) { in ApplyTypeConstraints()
2617 TreePatternNode *SubIdxChild = getChild(I + 1); in ApplyTypeConstraints()
2661 TreePatternNode *Child = getChild(ChildNo++); in ApplyTypeConstraints()
2752 static bool OnlyOnRHSOfCommutative(TreePatternNode *N) { in OnlyOnRHSOfCommutative()
2768 bool TreePatternNode::canPatternMatch(std::string &Reason, in canPatternMatch()
2845 void TreePattern::ComputeNamedNodes(TreePatternNode *N) { in ComputeNamedNodes()
2869 TreePatternNodePtr Res = makeIntrusiveRefCnt<TreePatternNode>(DI, 1); in ParseTreePattern()
2884 TreePatternNodePtr Res = makeIntrusiveRefCnt<TreePatternNode>(TheInit, 1); in ParseTreePattern()
2895 return makeIntrusiveRefCnt<TreePatternNode>(TheInit, 1); in ParseTreePattern()
3003 Children.insert(Children.begin(), makeIntrusiveRefCnt<TreePatternNode>( in ParseTreePattern()
3028 TreePatternNodePtr Result = makeIntrusiveRefCnt<TreePatternNode>( in ParseTreePattern()
3081 InferAllTypes(const StringMap<SmallVector<TreePatternNode*,1> > *InNamedTypes) { in InferAllTypes() argument
3095 SmallVectorImpl<TreePatternNode*> &Nodes = Entry.second; in InferAllTypes()
3106 const SmallVectorImpl<TreePatternNode*> &InNodes = in InferAllTypes()
3110 for (TreePatternNode *Node : Nodes) { in InferAllTypes()
3135 TreePatternNode *N1 = Nodes[i], *N2 = Nodes[i+1]; in InferAllTypes()
3483 TreePatternNode *Dest = Pat->getChild(i); in FindPatternInputsAndOutputs()
3581 const TreePatternNode *N = Pat.getSrcPattern(); in Analyze()
3588 bool IsNodeBitcast(const TreePatternNode *N) const { in IsNodeBitcast()
3607 void AnalyzeNode(const TreePatternNode *N) { in AnalyzeNode()
3747 getInstructionsInTree(TreePatternNode *Tree, SmallVectorImpl<Record*> &Instrs) { in getInstructionsInTree()
3912 OpNode = makeIntrusiveRefCnt<TreePatternNode>(Xform, std::move(Children), in parseInstructionPattern()
3923 TreePatternNodePtr ResultPattern = makeIntrusiveRefCnt<TreePatternNode>( in parseInstructionPattern()
4012 typedef std::pair<TreePatternNode *, unsigned> NameRecord;
4014 static void FindNames(TreePatternNode *P, in FindNames()
4210 static bool ForceArbitraryInstResultType(TreePatternNode *N, TreePattern &TP) { in ForceArbitraryInstResultType()
4243 return makeIntrusiveRefCnt<TreePatternNode>(Xform, std::move(Children), in PromoteXForms()
4394 static void collectModes(std::set<unsigned> &Modes, const TreePatternNode *N) { in collectModes()
4426 const TreePatternNode *SrcP = nullptr, *DstP = nullptr; in ExpandHwModeBasedTypes()
4480 static void FindDepVarsOf(TreePatternNode *N, DepVarMap &DepMap) { in FindDepVarsOf()
4491 static void FindDepVars(TreePatternNode *N, MultipleUseVarSet &DepVars) { in FindDepVars()
4546 TreePatternNodePtr R = makeIntrusiveRefCnt<TreePatternNode>( in CombineChildVariants()
4710 TreePatternNode *Child = N->getChild(i); in GenerateVariantsOf()