[PATCH] D103072: [llvm-readobj] Optimize printing stack sizes to linear time.
James Henderson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue May 25 01:16:09 PDT 2021
jhenderson added inline comments.
================
Comment at: llvm/tools/llvm-readobj/ELFDumper.cpp:5747-5748
+ return None;
+ for (auto Index : Symbols->second) {
+
+ const Elf_Sym &Sym = *cantFail(Obj.getSymbol(this->DotSymtabSec, Index));
----------------
Nit: add a blank line before the start of the loop and remove the one inside the loop.
================
Comment at: llvm/tools/llvm-readobj/ELFDumper.cpp:5750-5751
+ const Elf_Sym &Sym = *cantFail(Obj.getSymbol(this->DotSymtabSec, Index));
+ if (Sym.st_shndx == ELF::SHN_UNDEF || Sym.getType() != ELF::STT_FUNC)
+ continue;
+
----------------
Based on the function name, can't this clause be moved inside the earlier loop, where it was before? That would avoid adding unnecessary symbols to the table.
================
Comment at: llvm/tools/llvm-readobj/ELFDumper.cpp:6724-6731
+ bool IsRelocatable = this->Obj.getHeader().e_type == ELF::ET_REL;
for (const Elf_Shdr &Sec : cantFail(this->Obj.sections())) {
if (Sec.sh_type != SHT_LLVM_BB_ADDR_MAP)
continue;
+ Optional<const Elf_Shdr *> FunctionSec = None;
+ if (IsRelocatable)
+ FunctionSec =
----------------
Seems like this change is unrelated?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D103072/new/
https://reviews.llvm.org/D103072
More information about the llvm-commits
mailing list