From 563a3dcbc1f2d26adcd6761358c45d635738f3c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matteo=20Gm=C3=BCr?= Date: Mon, 14 Oct 2024 12:42:54 +0000 Subject: Add more info on which elf flag means which objdump flag --- arch/x86_64/src/kernel/main.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'arch/x86_64/src/kernel/main.cpp') diff --git a/arch/x86_64/src/kernel/main.cpp b/arch/x86_64/src/kernel/main.cpp index 106ca2a..bdf530c 100644 --- a/arch/x86_64/src/kernel/main.cpp +++ b/arch/x86_64/src/kernel/main.cpp @@ -63,6 +63,29 @@ namespace teachos::arch::kernel for (auto section = begin; section != end; ++section) { + bool const writeable = section->flags.writeable(); + bool const occupies_memory = section->flags.occupies_memory(); + bool const is_executable = section->flags.is_executable(); + bool const contains_duplicate_data = section->flags.contains_duplicate_data(); + bool const contains_strings = section->flags.contains_strings(); + bool const section_header_info_is_section_header_table_index = + section->flags.section_header_info_is_section_header_table_index(); + bool const preserve_ordering_after_combination = section->flags.preserve_ordering_after_combination(); + bool const requires_special_os_processing = section->flags.requires_special_os_processing(); + bool const is_section_group_member = section->flags.is_section_group_member(); + bool const holds_thread_local_data = section->flags.holds_thread_local_data(); + bool const is_compressed = section->flags.is_compressed(); + bool const has_special_ordering_requirements = section->flags.has_special_ordering_requirements(); + bool const is_excluded_unless_referenced_or_allocated = + section->flags.is_excluded_unless_referenced_or_allocated(); + + if (writeable && occupies_memory && is_executable && contains_duplicate_data && contains_strings && + section_header_info_is_section_header_table_index && preserve_ordering_after_combination && + requires_special_os_processing && is_section_group_member && holds_thread_local_data && is_compressed && + has_special_ordering_requirements && is_excluded_unless_referenced_or_allocated) + { + } + switch (section->type) { case arch::memory::elf_section_type::PROGRAMM: { -- cgit v1.2.3