[PATCH] D68620: DebugInfo: Use base address selection entries for debug_loc

David Blaikie via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 16 09:51:22 PDT 2020


dblaikie added a comment.

In D68620#2276034 <https://reviews.llvm.org/D68620#2276034>, @Orlando wrote:

>> Thanks for the data!
>
> Happy to help :)
>
>> (as an aside: do you/@probinson have much of a sense of how much binary size increase you'd trade for object size reductions in this space? If binary size is ulmtimately what you care most about, I'm guessing maybe debug_loc base address specifiers will never be a win for you & perhaps we should just group them under a flag, maybe refactor the debug_ranges base address specifier flag to cover both (the flag there was introduced due to a gold+gdb_index+32 bit binary bug, unfortunately, but lumping them together seems OK-ish to me))
>
> I'm not sure, I'll defer to @probinson on that.
>
>> When you say "llvm-master before/after your commits" - what version of llvm-master and what commits did you have to test with? (if you can/want to discuss them)
>>
>> I'm rather surprised, if master was moderately recent, that it shows no benefit from https://reviews.llvm.org/rG57d8acac64b87cb4286b00485fb2da7521fc091e (perhaps, if it's not too much hassle, you could run a sample benchmark before/after that change?)
>
> Apologies for being unclear. Stats for "before my commits" are taken from a build at the first commit before D79571 <https://reviews.llvm.org/D79571>, and "with my commits" is with D86153 <https://reviews.llvm.org/D86153> / rG57d8acac64b87cb4286b00485fb2da7521fc091e <https://reviews.llvm.org/rG57d8acac64b87cb4286b00485fb2da7521fc091e> applied (and all the commits in between, including D82129 <https://reviews.llvm.org/D82129>).

Ah, OK - so it sounds like we're back down below the size before I added debug_loc base address specifiers? That's good to hear!

If you're really interested in binary size, then, it might be worth an extra experiment to see what would happen if you disable base address specifiers - might still get you significantly below where we were before (now that the "don't use debug_loc so often" improvements have been made) - so there might still be some discussion about whether more selective use of base address selection entries would be good for you/others.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D68620



More information about the llvm-commits mailing list