[all-commits] [llvm/llvm-project] 54d819: Return high address masks correctly in Process (#7...

Jason Molenda via All-commits all-commits at lists.llvm.org
Tue Jan 16 23:59:17 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 54d81936393758fff8982aa4f4f997f4d9062828
      https://github.com/llvm/llvm-project/commit/54d81936393758fff8982aa4f4f997f4d9062828
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-01-16 (Tue, 16 Jan 2024)

  Changed paths:
    M lldb/source/Target/Process.cpp

  Log Message:
  -----------
  Return high address masks correctly in Process (#78379)

In https://reviews.llvm.org/D151292 I added the ability to track address
masks separately for high and low memory addresses, a capability of
AArch64. I did my testing with manual address mask settings (via
target.process.highmem-virtual-addressable-bits) but didn't have a real
corefile that included this metadata and required it.

My intention is that when the high address mask isn't specified, by the
user (via the setting) or the Process plugin, we fall back to using the
low address mask. The low and high address mask is the same for almost
all environments.

But the patch I wrote never uses the Process plugin high address mask if
it was set, e.g. from corefile metadata. This patch corrects that.

I also have an old patch in Phabractor that was approved to add
FixAddress methods to SBProcess; I need to pick that patch up and finish
it (I wanted to add an enum to specify which mask is being requested
iirc), so I can do address masks tests in API tests.

rdar://120926000




More information about the All-commits mailing list