Lines Matching refs:TreePatternNodePtr
1778 for (const TreePatternNodePtr &C : Children) in hasProperTypeByHwMode()
1788 for (const TreePatternNodePtr &C : Children) in hasPossibleType()
1801 for (const TreePatternNodePtr &C : Children) in setDefaultMode()
2013 TreePatternNodePtr TreePatternNode::clone() const { in clone()
2014 TreePatternNodePtr New; in clone()
2018 std::vector<TreePatternNodePtr> CChildren; in clone()
2047 std::map<std::string, TreePatternNodePtr> &ArgMap) { in SubstituteFormalArguments()
2059 TreePatternNodePtr NewChild = ArgMap[Child->getName()]; in SubstituteFormalArguments()
2077 TreePattern &TP, std::vector<TreePatternNodePtr> &OutAlternatives) { in InlinePatternFragments()
2096 std::vector<std::vector<TreePatternNodePtr>> ChildAlternatives( in InlinePatternFragments()
2099 TreePatternNodePtr Child = getChildShared(i); in InlinePatternFragments()
2108 [&](const TreePatternNodePtr &NewChild) { in InlinePatternFragments()
2120 std::vector<TreePatternNodePtr> NewChildren; in InlinePatternFragments()
2124 TreePatternNodePtr R = makeIntrusiveRefCnt<TreePatternNode>( in InlinePatternFragments()
2174 std::map<std::string, TreePatternNodePtr> ArgMap; in InlinePatternFragments()
2176 TreePatternNodePtr Child = getChildShared(i); in InlinePatternFragments()
2186 TreePatternNodePtr FragTree = Alternative->clone(); in InlinePatternFragments()
2825 TreePattern::TreePattern(Record *TheRec, TreePatternNodePtr Pat, bool isInput, in TreePattern()
2841 for (TreePatternNodePtr &Tree : Trees) in ComputeNamedNodes()
2853 TreePatternNodePtr TreePattern::ParseTreePattern(Init *TheInit, in ParseTreePattern()
2869 TreePatternNodePtr Res = makeIntrusiveRefCnt<TreePatternNode>(DI, 1); in ParseTreePattern()
2884 TreePatternNodePtr Res = makeIntrusiveRefCnt<TreePatternNode>(TheInit, 1); in ParseTreePattern()
2925 TreePatternNodePtr New = in ParseTreePattern()
2976 std::vector<TreePatternNodePtr> Children; in ParseTreePattern()
3009 TreePatternNodePtr Child = Children[i]; in ParseTreePattern()
3028 TreePatternNodePtr Result = makeIntrusiveRefCnt<TreePatternNode>( in ParseTreePattern()
3045 static bool SimplifyTree(TreePatternNodePtr &N) { in SimplifyTree()
3088 for (TreePatternNodePtr &Tree : Trees) { in InferAllTypes()
3147 for (const TreePatternNodePtr &Tree : Trees) in InferAllTypes()
3165 for (const TreePatternNodePtr &Tree : Trees) { in print()
3382 const TreePatternNodePtr &T = P.getTree(0); in ParseDefaultOperands()
3384 TreePatternNodePtr TPN = T->getChildShared(op); in ParseDefaultOperands()
3403 static bool HandleUse(TreePattern &I, TreePatternNodePtr Pat, in HandleUse()
3404 std::map<std::string, TreePatternNodePtr> &InstInputs) { in HandleUse()
3430 TreePatternNodePtr &Slot = InstInputs[Pat->getName()]; in HandleUse()
3458 TreePattern &I, TreePatternNodePtr Pat, in FindPatternInputsAndOutputs() argument
3459 std::map<std::string, TreePatternNodePtr> &InstInputs, in FindPatternInputsAndOutputs()
3460 MapVector<std::string, TreePatternNodePtr, std::map<std::string, unsigned>> in FindPatternInputsAndOutputs()
3525 TreePatternNodePtr Dest = Pat->getChildShared(i); in FindPatternInputsAndOutputs()
3785 std::map<std::string, TreePatternNodePtr> InstInputs; in parseInstructionPattern()
3789 MapVector<std::string, TreePatternNodePtr, std::map<std::string, unsigned>> in parseInstructionPattern()
3799 TreePatternNodePtr Pat = I.getTree(j); in parseInstructionPattern()
3828 SmallVector<TreePatternNodePtr, 2> ResNodes; in parseInstructionPattern()
3834 [](const std::pair<std::string, TreePatternNodePtr> &P) { in parseInstructionPattern()
3849 TreePatternNodePtr RNode = InstResultIter->second; in parseInstructionPattern()
3870 std::vector<TreePatternNodePtr> ResultNodeOperands; in parseInstructionPattern()
3890 TreePatternNodePtr InVal = InstInputs[OpName]; in parseInstructionPattern()
3902 TreePatternNodePtr OpNode = InVal->clone(); in parseInstructionPattern()
3910 std::vector<TreePatternNodePtr> Children; in parseInstructionPattern()
3923 TreePatternNodePtr ResultPattern = makeIntrusiveRefCnt<TreePatternNode>( in parseInstructionPattern()
3935 TreePatternNodePtr Pattern = I.getTree(0); in parseInstructionPattern()
3936 TreePatternNodePtr SrcPattern; in parseInstructionPattern()
4001 TreePatternNodePtr SrcPattern = TheInst.getSrcPattern(); in ParseInstructions()
4002 TreePatternNodePtr ResultPattern = TheInst.getResultPattern(); in ParseInstructions()
4238 static TreePatternNodePtr PromoteXForms(TreePatternNodePtr N) { in PromoteXForms()
4241 std::vector<TreePatternNodePtr> Children; in PromoteXForms()
4249 TreePatternNodePtr Child = N->getChildShared(i); in PromoteXForms()
4321 TreePatternNodePtr DstShared = PromoteXForms(Result.getOnlyTree()); in ParseOnePattern()
4382 std::map<std::string, TreePatternNodePtr> InstInputs; in ParsePatterns()
4383 MapVector<std::string, TreePatternNodePtr, std::map<std::string, unsigned>> in ParsePatterns()
4413 TreePatternNodePtr NewSrc = P.getSrcPattern()->clone(); in ExpandHwModeBasedTypes()
4414 TreePatternNodePtr NewDst = P.getDstPattern()->clone(); in ExpandHwModeBasedTypes()
4519 TreePatternNodePtr Orig, in CombineChildVariants()
4520 const std::vector<std::vector<TreePatternNodePtr>> &ChildVariants, in CombineChildVariants()
4521 std::vector<TreePatternNodePtr> &OutVariants, CodeGenDAGPatterns &CDP, in CombineChildVariants()
4542 std::vector<TreePatternNodePtr> NewChildren; in CombineChildVariants()
4546 TreePatternNodePtr R = makeIntrusiveRefCnt<TreePatternNode>( in CombineChildVariants()
4565 none_of(OutVariants, [&](TreePatternNodePtr Variant) { in CombineChildVariants()
4586 static void CombineChildVariants(TreePatternNodePtr Orig, in CombineChildVariants()
4587 const std::vector<TreePatternNodePtr> &LHS, in CombineChildVariants()
4588 const std::vector<TreePatternNodePtr> &RHS, in CombineChildVariants()
4589 std::vector<TreePatternNodePtr> &OutVariants, in CombineChildVariants()
4592 std::vector<std::vector<TreePatternNodePtr>> ChildVariants; in CombineChildVariants()
4599 GatherChildrenOfAssociativeOpcode(TreePatternNodePtr N, in GatherChildrenOfAssociativeOpcode()
4600 std::vector<TreePatternNodePtr> &Children) { in GatherChildrenOfAssociativeOpcode()
4625 static void GenerateVariantsOf(TreePatternNodePtr N, in GenerateVariantsOf()
4626 std::vector<TreePatternNodePtr> &OutVariants, in GenerateVariantsOf()
4641 std::vector<TreePatternNodePtr> MaximalChildren; in GenerateVariantsOf()
4648 std::vector<TreePatternNodePtr> AVariants, BVariants, CVariants; in GenerateVariantsOf()
4658 std::vector<TreePatternNodePtr> ABVariants; in GenerateVariantsOf()
4659 std::vector<TreePatternNodePtr> BAVariants; in GenerateVariantsOf()
4660 std::vector<TreePatternNodePtr> ACVariants; in GenerateVariantsOf()
4661 std::vector<TreePatternNodePtr> CAVariants; in GenerateVariantsOf()
4662 std::vector<TreePatternNodePtr> BCVariants; in GenerateVariantsOf()
4663 std::vector<TreePatternNodePtr> CBVariants; in GenerateVariantsOf()
4691 std::vector<std::vector<TreePatternNodePtr>> ChildVariants( in GenerateVariantsOf()
4745 std::vector<TreePatternNodePtr> Variants; in GenerateVariants()
4764 TreePatternNodePtr Variant = Variants[v]; in GenerateVariants()