[llvm] [TableGen] Use llvm::interleaved (NFC) (PR #137483)
Kazu Hirata via llvm-commits
llvm-commits at lists.llvm.org
Sat Apr 26 17:02:54 PDT 2025
https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/137483
None
>From dd743d047c2d6215d77b832ea6894167b9ae5190 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sat, 26 Apr 2025 16:21:41 -0700
Subject: [PATCH] [TableGen] Use llvm::interleaved (NFC)
---
llvm/utils/TableGen/CallingConvEmitter.cpp | 32 ++++++-------------
.../TableGen/Common/CodeGenDAGPatterns.cpp | 10 ++----
2 files changed, 12 insertions(+), 30 deletions(-)
diff --git a/llvm/utils/TableGen/CallingConvEmitter.cpp b/llvm/utils/TableGen/CallingConvEmitter.cpp
index c94d294db547a..d2700816b0ad0 100644
--- a/llvm/utils/TableGen/CallingConvEmitter.cpp
+++ b/llvm/utils/TableGen/CallingConvEmitter.cpp
@@ -12,6 +12,7 @@
//===----------------------------------------------------------------------===//
#include "Common/CodeGenTarget.h"
+#include "llvm/Support/InterleavedRange.h"
#include "llvm/TableGen/Error.h"
#include "llvm/TableGen/Record.h"
#include "llvm/TableGen/TGTimer.h"
@@ -395,22 +396,16 @@ void CallingConvEmitter::emitArgRegisterLists(raw_ostream &O) {
O << "\n#else\n\n";
- for (auto &Entry : AssignedRegsMap) {
- const std::string &RegName = Entry.first;
- std::set<std::string> &Registers = Entry.second;
-
+ for (const auto &[RegName, Registers] : AssignedRegsMap) {
if (RegName.empty())
continue;
- O << "const MCRegister " << Entry.first << "_ArgRegs[] = { ";
+ O << "const MCRegister " << RegName << "_ArgRegs[] = { ";
- if (Registers.empty()) {
+ if (Registers.empty())
O << "0";
- } else {
- ListSeparator LS;
- for (const std::string &Reg : Registers)
- O << LS << Reg;
- }
+ else
+ O << llvm::interleaved(Registers);
O << " };\n";
}
@@ -419,18 +414,9 @@ void CallingConvEmitter::emitArgRegisterLists(raw_ostream &O) {
return;
O << "\n// Registers used by Swift.\n";
- for (auto &Entry : AssignedSwiftRegsMap) {
- const std::string &RegName = Entry.first;
- std::set<std::string> &Registers = Entry.second;
-
- O << "const MCRegister " << RegName << "_Swift_ArgRegs[] = { ";
-
- ListSeparator LS;
- for (const std::string &Reg : Registers)
- O << LS << Reg;
-
- O << " };\n";
- }
+ for (const auto &[RegName, Registers] : AssignedSwiftRegsMap)
+ O << "const MCRegister " << RegName << "_Swift_ArgRegs[] = { "
+ << llvm::interleaved(Registers) << " };\n";
}
static TableGen::Emitter::OptClass<CallingConvEmitter>
diff --git a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
index 615c077fe4bdc..20b313d4428db 100644
--- a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
+++ b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
@@ -24,6 +24,7 @@
#include "llvm/ADT/Twine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Support/InterleavedRange.h"
#include "llvm/Support/TypeSize.h"
#include "llvm/TableGen/Error.h"
#include "llvm/TableGen/Record.h"
@@ -3217,13 +3218,8 @@ bool TreePattern::InferAllTypes(
void TreePattern::print(raw_ostream &OS) const {
OS << getRecord()->getName();
- if (!Args.empty()) {
- OS << "(";
- ListSeparator LS;
- for (const std::string &Arg : Args)
- OS << LS << Arg;
- OS << ")";
- }
+ if (!Args.empty())
+ OS << '(' << llvm::interleaved(Args) << ')';
OS << ": ";
if (Trees.size() > 1)
More information about the llvm-commits
mailing list