aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
index 1fcd850..04d98b9 100644
--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
@@ -1266,7 +1266,6 @@ bool GDBRemoteCommunicationClient::GetHostInfo(bool force) {
++num_keys_decoded;
} else if (name.equals("addressing_bits")) {
if (!value.getAsInteger(0, m_low_mem_addressing_bits)) {
- m_high_mem_addressing_bits = m_low_mem_addressing_bits;
++num_keys_decoded;
}
} else if (name.equals("high_mem_addressing_bits")) {
@@ -1420,11 +1419,11 @@ AddressableBits GDBRemoteCommunicationClient::GetAddressableBits() {
if (m_qHostInfo_is_valid == eLazyBoolCalculate)
GetHostInfo();
- // m_low_mem_addressing_bits and m_high_mem_addressing_bits
- // will be 0 if we did not receive values; AddressableBits
- // treats 0 as "unspecified".
- addressable_bits.SetAddressableBits(m_low_mem_addressing_bits,
- m_high_mem_addressing_bits);
+ if (m_low_mem_addressing_bits == m_high_mem_addressing_bits)
+ addressable_bits.SetAddressableBits(m_low_mem_addressing_bits);
+ else
+ addressable_bits.SetAddressableBits(m_low_mem_addressing_bits,
+ m_high_mem_addressing_bits);
return addressable_bits;
}