[llvm] [NFC][TableGen] Code cleanup in Record.h/cpp (PR #138876)

Rahul Joshi via llvm-commits llvm-commits at lists.llvm.org
Thu May 8 14:14:35 PDT 2025


================
@@ -1317,13 +1308,11 @@ const Init *BinOpInit::Fold(const Record *CurRec) const {
 
       SmallVector<const Init *, 8> Args;
       SmallVector<const StringInit *, 8> ArgNames;
-      for (unsigned i = 0, e = LHSs->getNumArgs(); i != e; ++i) {
-        Args.push_back(LHSs->getArg(i));
-        ArgNames.push_back(LHSs->getArgName(i));
-      }
-      for (unsigned i = 0, e = RHSs->getNumArgs(); i != e; ++i) {
-        Args.push_back(RHSs->getArg(i));
-        ArgNames.push_back(RHSs->getArgName(i));
+      for (const DagInit *Dag : {LHSs, RHSs}) {
+        for (auto [Arg, ArgName] : Dag->getArgAndNames()) {
+          Args.push_back(Arg);
+          ArgNames.push_back(ArgName);
+        }
----------------
jurahul wrote:

Done. I modified the `getArgAndNames` function to return a range of std::pair, so I can use just once append_range() to build the args for the new Dag being created.

https://github.com/llvm/llvm-project/pull/138876


More information about the llvm-commits mailing list