[Lldb-commits] [lldb] [lldb] Convert registers values into target endian for expressions (PR #148836)
David Spickett via lldb-commits
lldb-commits at lists.llvm.org
Tue Jul 15 05:25:52 PDT 2025
================
@@ -1376,29 +1376,26 @@ class EntityRegister : public Materializer::Entity {
return;
}
- DataExtractor register_data;
-
- if (!reg_value.GetData(register_data)) {
- err = Status::FromErrorStringWithFormat(
- "couldn't get the data for register %s", m_register_info.name);
- return;
- }
-
- if (register_data.GetByteSize() != m_register_info.byte_size) {
+ if (reg_value.GetByteSize() != m_register_info.byte_size) {
err = Status::FromErrorStringWithFormat(
"data for register %s had size %llu but we expected %llu",
- m_register_info.name, (unsigned long long)register_data.GetByteSize(),
+ m_register_info.name, (unsigned long long)reg_value.GetByteSize(),
(unsigned long long)m_register_info.byte_size);
return;
}
- m_register_contents = std::make_shared<DataBufferHeap>(
- register_data.GetDataStart(), register_data.GetByteSize());
+ lldb_private::DataBufferHeap buf(reg_value.GetByteSize(), 0);
+ reg_value.GetAsMemoryData(m_register_info, buf.GetBytes(),
+ buf.GetByteSize(), map.GetByteOrder(), err);
----------------
DavidSpickett wrote:
This `map.GetByteOrder` is the key part.
https://github.com/llvm/llvm-project/pull/148836
More information about the lldb-commits
mailing list