aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
diff options
context:
space:
mode:
authorJacob Lalonde <jalalonde@fb.com>2024-09-06 09:04:33 -0700
committerGitHub <noreply@github.com>2024-09-06 09:04:33 -0700
commitd4d4e77918118f1444dc5ca230d4fdf82bb05b74 (patch)
tree6f13aebc611efa21eaf851b40ab6d3766c155959 /lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
parentdeba13409245aabf3fda8b82a873336ea5238d3a (diff)
downloadllvm-d4d4e77918118f1444dc5ca230d4fdf82bb05b74.zip
llvm-d4d4e77918118f1444dc5ca230d4fdf82bb05b74.tar.gz
llvm-d4d4e77918118f1444dc5ca230d4fdf82bb05b74.tar.bz2
[LLDB] Reappply SBSaveCore AddMemoryList (#107159)
Reapplies #106293, testing identified issue in the merging code. I used this opportunity to strip CoreFileMemoryRanges to it's own file and then add unit tests on it's behavior.
Diffstat (limited to 'lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp')
-rw-r--r--lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
index b28beab..06da83e 100644
--- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
@@ -6562,13 +6562,15 @@ bool ObjectFileMachO::SaveCore(const lldb::ProcessSP &process_sp,
}
if (make_core) {
- Process::CoreFileMemoryRanges core_ranges;
+ CoreFileMemoryRanges core_ranges;
error = process_sp->CalculateCoreFileSaveRanges(options, core_ranges);
if (error.Success()) {
const uint32_t addr_byte_size = target_arch.GetAddressByteSize();
const ByteOrder byte_order = target_arch.GetByteOrder();
std::vector<llvm::MachO::segment_command_64> segment_load_commands;
- for (const auto &core_range : core_ranges) {
+ for (const auto &core_range_info : core_ranges) {
+ // TODO: Refactor RangeDataVector to have a data iterator.
+ const auto &core_range = core_range_info.data;
uint32_t cmd_type = LC_SEGMENT_64;
uint32_t segment_size = sizeof(llvm::MachO::segment_command_64);
if (addr_byte_size == 4) {