dblaikie added a comment.

Thanks for looking into this!

Could you measure the size of the object files of, for example, the clang 
binary before/after this change - and, if possible, on Linux (where relocations 
are required to fixup these addresses)? I'm concerned this might increase the 
size significantly.
Could you check if this does the right thing for Split DWARF or DWARFv5? (I 
suspect it does - if you're using the same API as is used for DW_TAG_label's 
low_pc, for instance - which I imagine you are) - in terms of adding the 
address to debug_addr, and using addrx encoding.

I was going to suggest we use a non-standard extension to preserve the 
subprogram-relative behavior, by using a different DW_FORM (such as data4) to 
communicate that this is a subprogram-relative value. But that won't be 
sufficient for PROPELLER, for instance, which fragments subprograms so there's 
no unique low_pc for it to be relative to. So that leaves us maybe really 
wanting the addr+offset encoding discussed here: 
http://lists.llvm.org/pipermail/llvm-dev/2020-January/138029.html


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D72489/new/

https://reviews.llvm.org/D72489



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to