[llvm] d87f9e2 - llvm/tools: Fix some performance-for-range-copy issues. NFC
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 27 13:27:56 PDT 2023
Author: Fangrui Song
Date: 2023-09-27T13:27:51-07:00
New Revision: d87f9e287217053bd4613e025c3fb0a941fd0196
URL: https://github.com/llvm/llvm-project/commit/d87f9e287217053bd4613e025c3fb0a941fd0196
DIFF: https://github.com/llvm/llvm-project/commit/d87f9e287217053bd4613e025c3fb0a941fd0196.diff
LOG: llvm/tools: Fix some performance-for-range-copy issues. NFC
Inspired by https://reviews.llvm.org/D139487 , but I apply manual fixes
when clang-tidy does not provide the best fix.
Added:
Modified:
llvm/tools/dsymutil/BinaryHolder.cpp
llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp
llvm/tools/llvm-xray/xray-stacks.cpp
llvm/tools/obj2yaml/dwarf2yaml.cpp
Removed:
################################################################################
diff --git a/llvm/tools/dsymutil/BinaryHolder.cpp b/llvm/tools/dsymutil/BinaryHolder.cpp
index c6661f4058f102c..c19285eebdd744e 100644
--- a/llvm/tools/dsymutil/BinaryHolder.cpp
+++ b/llvm/tools/dsymutil/BinaryHolder.cpp
@@ -182,7 +182,7 @@ BinaryHolder::ArchiveEntry::getObjectEntry(StringRef Filename,
for (const auto &Archive : Archives) {
Error Err = Error::success();
- for (auto Child : Archive->children(Err)) {
+ for (const auto &Child : Archive->children(Err)) {
if (auto NameOrErr = Child.getName()) {
if (*NameOrErr == ObjectFilename) {
auto ModTimeOrErr = Child.getLastModified();
diff --git a/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp b/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
index 156e10c84dddec9..8180ad2138f41fe 100644
--- a/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
+++ b/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
@@ -337,10 +337,10 @@ static bool filterArch(ObjectFile &Obj) {
return true;
if (auto *MachO = dyn_cast<MachOObjectFile>(&Obj)) {
- for (auto Arch : ArchFilters) {
+ for (const StringRef Arch : ArchFilters) {
// Match architecture number.
unsigned Value;
- if (!StringRef(Arch).getAsInteger(0, Value))
+ if (!Arch.getAsInteger(0, Value))
if (Value == getCPUType(*MachO))
return true;
@@ -649,7 +649,7 @@ static bool dumpObjectFile(ObjectFile &Obj, DWARFContext &DICtx,
// Handle the --name option.
if (!Name.empty()) {
StringSet<> Names;
- for (auto name : Name)
+ for (const auto &name : Name)
Names.insert((IgnoreCase && !UseRegex) ? StringRef(name).lower() : name);
filterByName(Names, DICtx.normal_units(), OS, GetRegName);
@@ -698,7 +698,7 @@ static bool handleArchive(StringRef Filename, Archive &Arch,
HandlerFn HandleObj, raw_ostream &OS) {
bool Result = true;
Error Err = Error::success();
- for (auto Child : Arch.children(Err)) {
+ for (const auto &Child : Arch.children(Err)) {
auto BuffOrErr = Child.getMemoryBufferRef();
error(Filename, BuffOrErr.takeError());
auto NameOrErr = Child.getName();
@@ -848,19 +848,19 @@ int main(int argc, char **argv) {
bool Success = true;
if (Verify) {
- for (auto Object : Objects)
+ for (StringRef Object : Objects)
Success &= handleFile(Object, verifyObjectFile, OutputFile.os());
} else if (Statistics) {
- for (auto Object : Objects)
+ for (StringRef Object : Objects)
Success &= handleFile(Object, collectStatsForObjectFile, OutputFile.os());
} else if (ShowSectionSizes) {
- for (auto Object : Objects)
+ for (StringRef Object : Objects)
Success &= handleFile(Object, collectObjectSectionSizes, OutputFile.os());
} else if (ShowSources) {
- for (auto Object : Objects)
+ for (StringRef Object : Objects)
Success &= handleFile(Object, collectObjectSources, OutputFile.os());
} else {
- for (auto Object : Objects)
+ for (StringRef Object : Objects)
Success &= handleFile(Object, dumpObjectFile, OutputFile.os());
}
diff --git a/llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp b/llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
index 672e8073beb7c8c..dc351c60e8d4100 100644
--- a/llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
+++ b/llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
@@ -213,14 +213,14 @@ static bool filterArch(MachOObjectFile &Obj) {
Triple ObjTriple(Obj.getArchTriple());
StringRef ObjArch = ObjTriple.getArchName();
- for (auto Arch : ArchFilters) {
+ for (StringRef Arch : ArchFilters) {
// Match name.
if (Arch == ObjArch)
return true;
// Match architecture number.
unsigned Value;
- if (!StringRef(Arch).getAsInteger(0, Value))
+ if (!Arch.getAsInteger(0, Value))
if (Value == getCPUType(Obj))
return true;
}
@@ -469,10 +469,9 @@ static llvm::Error convertFileToGSYM(raw_ostream &OS) {
error(DsymObjectsOrErr.takeError());
}
- for (auto Object : Objects) {
- if (auto Err = handleFileConversionToGSYM(Object, OutFile))
+ for (StringRef Object : Objects)
+ if (Error Err = handleFileConversionToGSYM(Object, OutFile))
return Err;
- }
return Error::success();
}
diff --git a/llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp b/llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp
index 5ae720aace427d9..c7653b7c06d4848 100644
--- a/llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp
+++ b/llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp
@@ -55,7 +55,7 @@ void TypeReferenceTracker::mark() {
// - globals
// - modi symbols
// - LF_UDT_MOD_SRC_LINE? VC always links these in.
- for (SymbolGroup SG : File.symbol_groups()) {
+ for (const SymbolGroup &SG : File.symbol_groups()) {
if (File.isObj()) {
for (const auto &SS : SG.getDebugSubsections()) {
// FIXME: Are there other type-referencing subsections? Inlinees?
diff --git a/llvm/tools/llvm-xray/xray-stacks.cpp b/llvm/tools/llvm-xray/xray-stacks.cpp
index d04b998daccaff2..aebca9048d4d494 100644
--- a/llvm/tools/llvm-xray/xray-stacks.cpp
+++ b/llvm/tools/llvm-xray/xray-stacks.cpp
@@ -478,7 +478,7 @@ class StackTrie {
/// Prints top stacks for each thread.
void printPerThread(raw_ostream &OS, FuncIdConversionHelper &FN) {
- for (auto iter : Roots) {
+ for (const auto &iter : Roots) {
OS << "Thread " << iter.first << ":\n";
print(OS, FN, iter.second);
OS << "\n";
@@ -489,12 +489,8 @@ class StackTrie {
template <AggregationType AggType>
void printAllPerThread(raw_ostream &OS, FuncIdConversionHelper &FN,
StackOutputFormat format) {
- for (auto iter : Roots) {
- uint32_t threadId = iter.first;
- RootVector &perThreadRoots = iter.second;
- bool reportThreadId = true;
- printAll<AggType>(OS, FN, perThreadRoots, threadId, reportThreadId);
- }
+ for (const auto &iter : Roots)
+ printAll<AggType>(OS, FN, iter.second, iter.first, true);
}
/// Prints top stacks from looking at all the leaves and ignoring thread IDs.
@@ -521,7 +517,7 @@ class StackTrie {
/// thread IDs.
RootVector mergeAcrossThreads(std::forward_list<StackTrieNode> &NodeStore) {
RootVector MergedByThreadRoots;
- for (auto MapIter : Roots) {
+ for (const auto &MapIter : Roots) {
const auto &RootNodeVector = MapIter.second;
for (auto *Node : RootNodeVector) {
auto MaybeFoundIter =
diff --git a/llvm/tools/obj2yaml/dwarf2yaml.cpp b/llvm/tools/obj2yaml/dwarf2yaml.cpp
index f2c96968cc7deeb..b3062c40fd2432b 100644
--- a/llvm/tools/obj2yaml/dwarf2yaml.cpp
+++ b/llvm/tools/obj2yaml/dwarf2yaml.cpp
@@ -28,10 +28,11 @@ Error dumpDebugAbbrev(DWARFContext &DCtx, DWARFYAML::Data &Y) {
uint64_t AbbrevTableID = 0;
if (Error Err = AbbrevSetPtr->parse())
return Err;
- for (auto AbbrvDeclSet : *AbbrevSetPtr) {
+ for (const auto &AbbrvDeclSet : *AbbrevSetPtr) {
Y.DebugAbbrev.emplace_back();
Y.DebugAbbrev.back().ID = AbbrevTableID++;
- for (auto AbbrvDecl : AbbrvDeclSet.second) {
+ for (const DWARFAbbreviationDeclaration &AbbrvDecl :
+ AbbrvDeclSet.second) {
DWARFYAML::Abbrev Abbrv;
Abbrv.Code = AbbrvDecl.getCode();
Abbrv.Tag = AbbrvDecl.getTag();
More information about the llvm-commits
mailing list