This commit is contained in:
2026-05-11 18:07:14 +02:00
parent f563827898
commit 2b0176790e
4 changed files with 75 additions and 79 deletions
+8 -10
View File
@@ -1,21 +1,19 @@
#include <print>
#include <elfio/elfio.hpp>
#include <ircolib/mem_access.hpp>
int main() {
ELFIO::elfio reader;
if (!reader.load("tests/elf/application.elf"))
return 1;
for (ELFIO::Elf_Half i = 0; i < reader.segments.size(); i++) {
const auto &segment = reader.segments[i];
std::println(R"(Segment type {} @ 0x{:08X} -> 0x{:08X})", segment->get_type(), segment->get_virtual_address(),
segment->get_virtual_address() + segment->get_memory_size() - 1);
}
for (ELFIO::Elf_Half i = 1; i < reader.sections.size(); i++) {
const auto &section = reader.sections[i];
std::println(R"(Section n.{} "{}": 0x{:08X} -> 0x{:08X})", i, section->get_name(), section->get_address(),
section->get_address() + section->get_size() - 1);
for (const auto &section : reader.sections) {
for (const auto &segment : reader.segments) {
if (ircolib::IsInsideRange(section->get_address(), segment->get_virtual_address(),
segment->get_virtual_address() + segment->get_memory_size() - 1))
std::println("Found section {} @ 0x{:08X} -> 0x{:08X}", section->get_index(), section->get_address(),
section->get_address() + section->get_size() - 1);
}
}
return 0;