mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-23 20:29:30 +00:00
Use range loops. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241105 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6e0583f36b
commit
60e53b2777
@ -616,44 +616,41 @@ void ELFDumper<ELFT>::printSections() {
|
||||
ListScope SectionsD(W, "Sections");
|
||||
|
||||
int SectionIndex = -1;
|
||||
for (typename ELFO::Elf_Shdr_Iter SecI = Obj->section_begin(),
|
||||
SecE = Obj->section_end();
|
||||
SecI != SecE; ++SecI) {
|
||||
for (const typename ELFO::Elf_Shdr &Sec : Obj->sections()) {
|
||||
++SectionIndex;
|
||||
|
||||
const Elf_Shdr *Section = &*SecI;
|
||||
StringRef Name = errorOrDefault(Obj->getSectionName(Section));
|
||||
StringRef Name = errorOrDefault(Obj->getSectionName(&Sec));
|
||||
|
||||
DictScope SectionD(W, "Section");
|
||||
W.printNumber("Index", SectionIndex);
|
||||
W.printNumber("Name", Name, Section->sh_name);
|
||||
W.printNumber("Name", Name, Sec.sh_name);
|
||||
W.printHex("Type",
|
||||
getElfSectionType(Obj->getHeader()->e_machine, Section->sh_type),
|
||||
Section->sh_type);
|
||||
W.printFlags ("Flags", Section->sh_flags, makeArrayRef(ElfSectionFlags));
|
||||
W.printHex ("Address", Section->sh_addr);
|
||||
W.printHex ("Offset", Section->sh_offset);
|
||||
W.printNumber("Size", Section->sh_size);
|
||||
W.printNumber("Link", Section->sh_link);
|
||||
W.printNumber("Info", Section->sh_info);
|
||||
W.printNumber("AddressAlignment", Section->sh_addralign);
|
||||
W.printNumber("EntrySize", Section->sh_entsize);
|
||||
getElfSectionType(Obj->getHeader()->e_machine, Sec.sh_type),
|
||||
Sec.sh_type);
|
||||
W.printFlags("Flags", Sec.sh_flags, makeArrayRef(ElfSectionFlags));
|
||||
W.printHex("Address", Sec.sh_addr);
|
||||
W.printHex("Offset", Sec.sh_offset);
|
||||
W.printNumber("Size", Sec.sh_size);
|
||||
W.printNumber("Link", Sec.sh_link);
|
||||
W.printNumber("Info", Sec.sh_info);
|
||||
W.printNumber("AddressAlignment", Sec.sh_addralign);
|
||||
W.printNumber("EntrySize", Sec.sh_entsize);
|
||||
|
||||
if (opts::SectionRelocations) {
|
||||
ListScope D(W, "Relocations");
|
||||
printRelocations(Section);
|
||||
printRelocations(&Sec);
|
||||
}
|
||||
|
||||
if (opts::SectionSymbols) {
|
||||
ListScope D(W, "Symbols");
|
||||
for (const typename ELFO::Elf_Sym &Sym : Obj->symbols()) {
|
||||
if (Obj->getSection(&Sym) == Section)
|
||||
if (Obj->getSection(&Sym) == &Sec)
|
||||
printSymbol(&Sym, false);
|
||||
}
|
||||
}
|
||||
|
||||
if (opts::SectionData && Section->sh_type != ELF::SHT_NOBITS) {
|
||||
ArrayRef<uint8_t> Data = errorOrDefault(Obj->getSectionContents(Section));
|
||||
if (opts::SectionData && Sec.sh_type != ELF::SHT_NOBITS) {
|
||||
ArrayRef<uint8_t> Data = errorOrDefault(Obj->getSectionContents(&Sec));
|
||||
W.printBinaryBlock("SectionData",
|
||||
StringRef((const char *)Data.data(), Data.size()));
|
||||
}
|
||||
@ -665,20 +662,18 @@ void ELFDumper<ELFT>::printRelocations() {
|
||||
ListScope D(W, "Relocations");
|
||||
|
||||
int SectionNumber = -1;
|
||||
for (typename ELFO::Elf_Shdr_Iter SecI = Obj->section_begin(),
|
||||
SecE = Obj->section_end();
|
||||
SecI != SecE; ++SecI) {
|
||||
for (const typename ELFO::Elf_Shdr &Sec : Obj->sections()) {
|
||||
++SectionNumber;
|
||||
|
||||
if (SecI->sh_type != ELF::SHT_REL && SecI->sh_type != ELF::SHT_RELA)
|
||||
if (Sec.sh_type != ELF::SHT_REL && Sec.sh_type != ELF::SHT_RELA)
|
||||
continue;
|
||||
|
||||
StringRef Name = errorOrDefault(Obj->getSectionName(&*SecI));
|
||||
StringRef Name = errorOrDefault(Obj->getSectionName(&Sec));
|
||||
|
||||
W.startLine() << "Section (" << SectionNumber << ") " << Name << " {\n";
|
||||
W.indent();
|
||||
|
||||
printRelocations(&*SecI);
|
||||
printRelocations(&Sec);
|
||||
|
||||
W.unindent();
|
||||
W.startLine() << "}\n";
|
||||
@ -1129,12 +1124,11 @@ template <> void ELFDumper<ELFType<support::little, false>>::printAttributes() {
|
||||
}
|
||||
|
||||
DictScope BA(W, "BuildAttributes");
|
||||
for (ELFO::Elf_Shdr_Iter SI = Obj->section_begin(), SE = Obj->section_end();
|
||||
SI != SE; ++SI) {
|
||||
if (SI->sh_type != ELF::SHT_ARM_ATTRIBUTES)
|
||||
for (const ELFO::Elf_Shdr &Sec : Obj->sections()) {
|
||||
if (Sec.sh_type != ELF::SHT_ARM_ATTRIBUTES)
|
||||
continue;
|
||||
|
||||
ErrorOr<ArrayRef<uint8_t> > Contents = Obj->getSectionContents(&(*SI));
|
||||
ErrorOr<ArrayRef<uint8_t>> Contents = Obj->getSectionContents(&Sec);
|
||||
if (!Contents)
|
||||
continue;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user