[clang] [clang][DebugInfo] Attach `DISubprogram` to additional call variants (PR #166202)

Orlando Cazalet-Hyams via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 20 03:08:27 PST 2025


OCHyams wrote:

> However, I would mention that AFAIK, a call_site entry can be useful iff:
>   1. is marked as a tail call (debuggers use it to show the artificial frames)
>   2. has call-site-paramters (debuggers use it along with entry_values)
> Otherwise, we can avoid the call_sites in the final DWARF, and it should reduce the final binary size.

I don't think this is true for our (Sony) debugger, which wants to see call site info even in cases without call site parameters (it's not only using it for entry_value computation).

@asmok-g said:
 >Heads-up: This is causing ~1.5% increase in bin size of clang when built internally in Google and ~1.8% increase in dwp file. It does the same for a couple other internal google targets. I'm posting a heads-up for now and we will discuss internally how much of an issue this is before we come back to the thread. Thanks

@jryans  said:
> [...] this is effectively fixing a debug correctness issue [...]

As @jryans points out this is more of a bug fix as iIIUC t's adding coverage that should have been there from the start.

Does google use call site information (does it care about entry_values, or do any extra stuff with the info)? If not, I wonder if it would be useful to add a flag to disable call site info for your builds (if such a flag doesn't already exist)?

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


More information about the cfe-commits mailing list