[Lldb-commits] [lldb] [lldb] Implement DW_CFA_val_offset and DW_CFA_val_offset_sf (PR #150732)

Daniel Sanders via lldb-commits lldb-commits at lists.llvm.org
Tue Jul 29 09:43:29 PDT 2025


dsandersllvm wrote:

I don't think combining them in ConcreteRegisterLocation completely makes sense like it did for AbstractRegisterLocation because there's a difference in semantics. eRegisterInRegister refers to a storage location whereas eRegisterIsRegisterPlusOffset is a computed value without any storage.

It's true they're very similar in ReadRegisterValueFromRegisterLocation() and we could potentially combine those two implementations in that function, but there's nowhere to write eRegisterIsRegisterPlusOffset to in WriteRegisterValueToRegisterLocation(). I could conditionally drop the write if offset != 0 but I think it's potentially confusing to have the semantics depend on the values rather than the enumerator

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


More information about the lldb-commits mailing list