Skip to content

Commit 052b1a0

Browse files
committed
Optimize code style
Signed-off-by: Ruoyu Qiu <[email protected]>
1 parent 9260c30 commit 052b1a0

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

Diff for: llvm/lib/ObjectYAML/ELFEmitter.cpp

+8-6
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ template <class ELFT> class ELFState {
206206
NameToIdxMap DynSymN2I;
207207
ELFYAML::Object &Doc;
208208

209-
std::vector<std::pair<unsigned, ELFYAML::Section>>
209+
std::vector<std::pair<Elf_Shdr*, ELFYAML::Section>>
210210
SectionHeadersOverrideHelper;
211211

212212
StringSet<> ExcludedSectionHeaders;
@@ -849,7 +849,7 @@ void ELFState<ELFT>::initSectionHeaders(std::vector<Elf_Shdr> &SHeaders,
849849
}
850850

851851
LocationCounter += SHeader.sh_size;
852-
SectionHeadersOverrideHelper.push_back({SN2I.get(Sec->Name), *Sec});
852+
SectionHeadersOverrideHelper.push_back({&SHeader, *Sec});
853853
continue;
854854
}
855855

@@ -903,15 +903,15 @@ void ELFState<ELFT>::initSectionHeaders(std::vector<Elf_Shdr> &SHeaders,
903903
}
904904

905905
LocationCounter += SHeader.sh_size;
906-
SectionHeadersOverrideHelper.push_back({SN2I.get(Sec->Name), *Sec});
906+
SectionHeadersOverrideHelper.push_back({&SHeader, *Sec});
907907
}
908908
}
909909

910910
template <class ELFT>
911911
void ELFState<ELFT>::overrideSectionHeaders(std::vector<Elf_Shdr> &SHeaders) {
912-
for (std::pair<unsigned, ELFYAML::Section> &IndexAndSec :
912+
for (std::pair<Elf_Shdr*, ELFYAML::Section> &HeaderAndSec :
913913
SectionHeadersOverrideHelper)
914-
overrideFields<ELFT>(&IndexAndSec.second, SHeaders[IndexAndSec.first]);
914+
overrideFields<ELFT>(&HeaderAndSec.second, *HeaderAndSec.first);
915915
}
916916

917917
template <class ELFT>
@@ -2099,7 +2099,9 @@ bool ELFState<ELFT>::writeELF(raw_ostream &OS, ELFYAML::Object &Doc,
20992099
// Now we can decide segment offsets.
21002100
State.setProgramHeaderLayout(PHeaders, SHeaders);
21012101

2102-
// Override section fields if requested.
2102+
// Override section fields, if requested. This needs to happen after program
2103+
// header layout happens, because otherwise the layout will use the new
2104+
// values.
21032105
State.overrideSectionHeaders(SHeaders);
21042106

21052107
bool ReachedLimit = CBA.getOffset() > MaxSize;

0 commit comments

Comments
 (0)