mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Avoid one more walk over all sections. NFC.
Set the group section index as they are created. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236049 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
63ca5d6589
commit
f75160b8d9
@ -957,15 +957,6 @@ void ELFObjectWriter::maybeAddToGroup(MCAssembler &Asm,
|
||||
void ELFObjectWriter::computeIndexMap(
|
||||
MCAssembler &Asm, std::vector<const MCSectionELF *> &Sections,
|
||||
SectionIndexMapTy &SectionIndexMap, const RevGroupMapTy &RevGroupMap) {
|
||||
for (const MCSectionData &SD : Asm) {
|
||||
const MCSectionELF &Section =
|
||||
static_cast<const MCSectionELF &>(SD.getSection());
|
||||
if (Section.getType() != ELF::SHT_GROUP)
|
||||
continue;
|
||||
Sections.push_back(&Section);
|
||||
SectionIndexMap[&Section] = Sections.size();
|
||||
}
|
||||
|
||||
std::vector<const MCSectionELF *> RelSections;
|
||||
for (const MCSectionData &SD : Asm) {
|
||||
const MCSectionELF &Section =
|
||||
@ -1465,6 +1456,9 @@ void ELFObjectWriter::createIndexedSections(
|
||||
const MCSectionELF *&Group = RevGroupMap[SignatureSymbol];
|
||||
if (!Group) {
|
||||
Group = Ctx.createELFGroupSection(SignatureSymbol);
|
||||
Sections.push_back(Group);
|
||||
SectionIndexMap[Group] = Sections.size();
|
||||
|
||||
MCSectionData &Data = Asm.getOrCreateSectionData(*Group);
|
||||
Data.setAlignment(4);
|
||||
MCDataFragment *F = new MCDataFragment(&Data);
|
||||
|
Loading…
Reference in New Issue
Block a user