aboutsummaryrefslogtreecommitdiff
path: root/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
diff options
context:
space:
mode:
authorRahul Joshi <rjoshi@nvidia.com>2025-05-16 09:45:58 -0700
committerGitHub <noreply@github.com>2025-05-16 09:45:58 -0700
commit7674d6fa9e45c1748d0dd49430aa472028d44a2d (patch)
tree3a5397baaa7a1cdf325f0923ffec25318c8d4930 /llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
parentebb15353d2a1edefb40faa0ad56e661b7aee3134 (diff)
downloadllvm-7674d6fa9e45c1748d0dd49430aa472028d44a2d.zip
llvm-7674d6fa9e45c1748d0dd49430aa472028d44a2d.tar.gz
llvm-7674d6fa9e45c1748d0dd49430aa472028d44a2d.tar.bz2
[LLVM][TableGen] Simplify `DagInit::get` (#140056)
- Add `DagInit::get` overloads that do not need ValName to be specified. - Fix some calls to either not create temporary arrays for DAG args or use the std::pair<> overload.
Diffstat (limited to 'llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp')
-rw-r--r--llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp12
1 files changed, 3 insertions, 9 deletions
diff --git a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
index b6bc528..45f1446 100644
--- a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
+++ b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
@@ -2906,11 +2906,7 @@ TreePatternNodePtr TreePattern::ParseTreePattern(const Init *TheInit,
// TreePatternNode of its own. For example:
/// (foo GPR, imm) -> (foo GPR, (imm))
if (R->isSubClassOf("SDNode") || R->isSubClassOf("PatFrags"))
- return ParseTreePattern(
- DagInit::get(
- DI, nullptr,
- std::vector<std::pair<const Init *, const StringInit *>>()),
- OpName);
+ return ParseTreePattern(DagInit::get(DI, {}), OpName);
// Input argument?
TreePatternNodePtr Res = makeIntrusiveRefCnt<TreePatternNode>(DI, 1);
@@ -3413,10 +3409,8 @@ void CodeGenDAGPatterns::ParseDefaultOperands() {
// Clone the DefaultInfo dag node, changing the operator from 'ops' to
// SomeSDnode so that we can parse this.
- std::vector<std::pair<const Init *, const StringInit *>> Ops;
- for (unsigned op = 0, e = DefaultInfo->getNumArgs(); op != e; ++op)
- Ops.emplace_back(DefaultInfo->getArg(op), DefaultInfo->getArgName(op));
- const DagInit *DI = DagInit::get(SomeSDNode, nullptr, Ops);
+ const DagInit *DI = DagInit::get(SomeSDNode, DefaultInfo->getArgs(),
+ DefaultInfo->getArgNames());
// Create a TreePattern to parse this.
TreePattern P(DefaultOps[i], DI, false, *this);