lldb [NFC] Add logging to Process when address masks are updated

To aid in integration testing/debugging. Verifying that the address
mask/addressable bits values from different sources are correctly
registered by lldb.
This commit is contained in:
Jason Molenda
2023-06-15 17:37:42 -07:00
parent 43687da7a0
commit 538df1d8a2
2 changed files with 32 additions and 14 deletions

View File

@@ -1376,21 +1376,11 @@ public:
lldb::addr_t GetHighmemCodeAddressMask();
lldb::addr_t GetHighmemDataAddressMask();
void SetCodeAddressMask(lldb::addr_t code_address_mask) {
m_code_address_mask = code_address_mask;
}
void SetCodeAddressMask(lldb::addr_t code_address_mask);
void SetDataAddressMask(lldb::addr_t data_address_mask);
void SetDataAddressMask(lldb::addr_t data_address_mask) {
m_data_address_mask = data_address_mask;
}
void SetHighmemCodeAddressMask(lldb::addr_t code_address_mask) {
m_highmem_code_address_mask = code_address_mask;
}
void SetHighmemDataAddressMask(lldb::addr_t data_address_mask) {
m_highmem_data_address_mask = data_address_mask;
}
void SetHighmemCodeAddressMask(lldb::addr_t code_address_mask);
void SetHighmemDataAddressMask(lldb::addr_t data_address_mask);
/// Some targets might use bits in a code address to indicate a mode switch,
/// ARM uses bit zero to signify a code address is thumb, so any ARM ABI

View File

@@ -5688,6 +5688,34 @@ lldb::addr_t Process::GetHighmemDataAddressMask() {
return GetDataAddressMask();
}
void Process::SetCodeAddressMask(lldb::addr_t code_address_mask) {
Log *log = GetLog(LLDBLog::Process);
LLDB_LOGF(log, "Setting Process code address mask to 0x%" PRIx64,
code_address_mask);
m_code_address_mask = code_address_mask;
}
void Process::SetDataAddressMask(lldb::addr_t data_address_mask) {
Log *log = GetLog(LLDBLog::Process);
LLDB_LOGF(log, "Setting Process data address mask to 0x%" PRIx64,
data_address_mask);
m_data_address_mask = data_address_mask;
}
void Process::SetHighmemCodeAddressMask(lldb::addr_t code_address_mask) {
Log *log = GetLog(LLDBLog::Process);
LLDB_LOGF(log, "Setting Process highmem code address mask to 0x%" PRIx64,
code_address_mask);
m_highmem_code_address_mask = code_address_mask;
}
void Process::SetHighmemDataAddressMask(lldb::addr_t data_address_mask) {
Log *log = GetLog(LLDBLog::Process);
LLDB_LOGF(log, "Setting Process highmem data address mask to 0x%" PRIx64,
data_address_mask);
m_highmem_data_address_mask = data_address_mask;
}
addr_t Process::FixCodeAddress(addr_t addr) {
if (ABISP abi_sp = GetABI())
addr = abi_sp->FixCodeAddress(addr);