ellis added a comment.

In D157913#4638845 <https://reviews.llvm.org/D157913#4638845>, @zequanwu wrote:

> In D157913#4638569 <https://reviews.llvm.org/D157913#4638569>, @phosek wrote:
>
>> In D157913#4626007 <https://reviews.llvm.org/D157913#4626007>, @zequanwu 
>> wrote:
>>
>>>> It seems that the `__llvm_prf_names` is retained in this mode. What is the 
>>>> overhead of this section generally? Can we instead use debug info to 
>>>> lookup function names?
>>>
>>> With debug info correlation enabled, `__llvm_prf_names` section will only 
>>> contain functions names that are not emitted to the final binary, not even 
>>> in debug info.
>>
>> Could we emit those names into the `.debug_str` section?
>
> Yes, I think it's feasible by creating a fake variable debug info that 
> contains all the skipped function names in the source file for each object 
> file, but that's a bit more overhead in debug info compared to just plain 
> `__llvm_prf_names` in binary, which is only about 0.2% or less of original 
> size [1].
>
> [1]: https://bugs.chromium.org/p/chromium/issues/detail?id=1463755#c8

Since the `.debug_str` section can be stripped before execution time, I don't 
count that towards the binary size overhead. But I believe the 
`__llvm_prf_names` section cannot be stripped as is. So it would be an 
improvement if we could completely remove the `__llvm_prf_names` section and 
emit names in the `.debug_str` section.

I see that you have one case where the overhead of the names section is just 
0.2%. I wonder if this is common or if there exist real-world scenarios where 
the overhead is more significant. If not then leaving the names section in the 
binary might be ok, but we should probably leave a note explaining how we could 
remove it if we emit the names in debug info.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D157913

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

Reply via email to