1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 18:07:34 +00:00

LibELF: Don't build barely-used section lookup table in ELF::Image

The name-to-section lookup table was only used in a handful of places,
and none of them were calling it nearly enough to justify building
a cache for it in the first place. So let's get rid of it and reduce
startup time by a little bit. :^)
This commit is contained in:
Andreas Kling 2021-02-23 19:45:29 +01:00
parent 06919d189b
commit 4ed85e9b9e
2 changed files with 6 additions and 12 deletions

View file

@ -186,12 +186,6 @@ bool Image::parse()
}
}
// Then create a name-to-index map.
for (unsigned i = 0; i < section_count(); ++i) {
auto section = this->section(i);
m_sections.set(section.name(), move(i));
}
return m_valid;
}
@ -298,8 +292,11 @@ Image::RelocationSection Image::Section::relocations() const
Image::Section Image::lookup_section(const String& name) const
{
ASSERT(m_valid);
if (auto it = m_sections.find(name); it != m_sections.end())
return section((*it).value);
for (unsigned i = 0; i < section_count(); ++i) {
auto section = this->section(i);
if (section.name() == name)
return section;
}
return section(0);
}