[Lldb-commits] [PATCH] D144528: [lldb] Warn when Mach-O files have overlapping segments
Alex Langford via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed Feb 22 13:22:46 PST 2023
This revision was automatically updated to reflect the committed changes.
Closed by commit rGcee05eed2f47: [lldb] Warn when Mach-O files have overlapping segments (authored by bulbazord).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D144528/new/
https://reviews.llvm.org/D144528
Files:
lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Index: lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
===================================================================
--- lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+++ lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
@@ -6182,6 +6182,10 @@
size_t num_loaded_sections = 0;
const size_t num_sections = section_list->GetSize();
+ // Warn if some top-level segments map to the same address. The binary may be
+ // malformed.
+ const bool warn_multiple = true;
+
if (value_is_offset) {
// "value" is an offset to apply to each top level segment
for (size_t sect_idx = 0; sect_idx < num_sections; ++sect_idx) {
@@ -6190,7 +6194,8 @@
SectionSP section_sp(section_list->GetSectionAtIndex(sect_idx));
if (SectionIsLoadable(section_sp.get()))
if (target.GetSectionLoadList().SetSectionLoadAddress(
- section_sp, section_sp->GetFileAddress() + value))
+ section_sp, section_sp->GetFileAddress() + value,
+ warn_multiple))
++num_loaded_sections;
}
} else {
@@ -6207,7 +6212,7 @@
value, mach_header_section, section_sp.get());
if (section_load_addr != LLDB_INVALID_ADDRESS) {
if (target.GetSectionLoadList().SetSectionLoadAddress(
- section_sp, section_load_addr))
+ section_sp, section_load_addr, warn_multiple))
++num_loaded_sections;
}
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D144528.499632.patch
Type: text/x-patch
Size: 1479 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20230222/f9416a9a/attachment-0001.bin>
More information about the lldb-commits
mailing list