diff --git a/llvm/include/llvm/IR/ModuleSummaryIndex.h b/llvm/include/llvm/IR/ModuleSummaryIndex.h index 7bc7d8550d6df..d5638174627d8 100644 --- a/llvm/include/llvm/IR/ModuleSummaryIndex.h +++ b/llvm/include/llvm/IR/ModuleSummaryIndex.h @@ -378,14 +378,7 @@ struct MIBInfo { inline raw_ostream &operator<<(raw_ostream &OS, const MIBInfo &MIB) { OS << "AllocType " << (unsigned)MIB.AllocType; - bool First = true; - OS << " StackIds: "; - for (auto Id : MIB.StackIdIndices) { - if (!First) - OS << ", "; - First = false; - OS << Id; - } + OS << " StackIds: " << llvm::interleaved(MIB.StackIdIndices); return OS; } diff --git a/llvm/utils/TableGen/OptionParserEmitter.cpp b/llvm/utils/TableGen/OptionParserEmitter.cpp index b1ca8ded0a4af..be0ed1eca35bb 100644 --- a/llvm/utils/TableGen/OptionParserEmitter.cpp +++ b/llvm/utils/TableGen/OptionParserEmitter.cpp @@ -11,6 +11,7 @@ #include "llvm/ADT/SmallString.h" #include "llvm/ADT/StringExtras.h" #include "llvm/ADT/Twine.h" +#include "llvm/Support/InterleavedRange.h" #include "llvm/Support/raw_ostream.h" #include "llvm/TableGen/Record.h" #include "llvm/TableGen/StringToOffsetTable.h" @@ -232,17 +233,8 @@ static void emitHelpTextsForVariants( assert(Visibilities.size() <= MaxVisibilityPerHelp && "Too many visibilities to store in an " "OptTable::HelpTextsForVariants entry"); - OS << "{std::array{{"; - - auto VisibilityEnd = Visibilities.cend(); - for (auto Visibility = Visibilities.cbegin(); Visibility != VisibilityEnd; - ++Visibility) { - OS << *Visibility; - if (std::next(Visibility) != VisibilityEnd) - OS << ", "; - } - - OS << "}}, "; + OS << "{std::array{{" + << llvm::interleaved(Visibilities) << "}}, "; if (Help.size()) writeCstring(OS, Help);