[Lldb-commits] [lldb] [lldb] Track CFA pointer metadata in StackID (PR #157498)

David Spickett via lldb-commits lldb-commits at lists.llvm.org
Tue Sep 9 01:55:21 PDT 2025


DavidSpickett wrote:

I agree with the ultimate goal of being able to control the handling of non-address bits, but help me understand this part:
> However, the CFA inside StackIDs is also used in other contexts through the method StackID::GetCallFrameAddress. One notable case is DWARFExpression: the computation of DW_OP_call_frame_address is done using StackID. This feeds into many other places, e.g. expression evaluation (which may require a signed pointer). As such, StackID must be able to provide both versions of the CFA.

Is this because this pointer may be used to work out the address of variables and if we had for example, a memory tagged stack variable, its address must preserve that tag so we can access it.

That sort of thing?

https://github.com/llvm/llvm-project/pull/157498


More information about the lldb-commits mailing list