djtodoro wrote: > This change does increase debug info size a bit. Here's a diff of object file > section sizes when compiling a recent commit of Clang using `-O2 -g` on Linux: > > ``` > FILE SIZE VM SIZE > -------------- -------------- > +1.4% +9.97Mi [ = ] 0 .debug_info > +2.3% +1.01Mi [ = ] 0 .debug_addr > +0.7% +836Ki [ = ] 0 .debug_str_offsets > +0.0% +129Ki [ = ] 0 .debug_str > +0.0% +22.1Ki [ = ] 0 .debug_loclists > +0.0% +7.96Ki [ = ] 0 .debug_rnglists > +21% +1.44Ki [ = ] 0 [Unmapped] > -0.0% -59 [ = ] 0 .debug_line_str > -0.0% -540 [ = ] 0 .debug_line > -0.0% -1.44Ki -0.0% -1.44Ki .rodata > -0.5% -60.6Ki [ = ] 0 .debug_abbrev > +0.7% +11.9Mi -0.0% -1.44Ki TOTAL > ``` > > Since this additional call site info was intended to be there all along > (AIUI) and is needed to properly retrieve variable values that use > `DW_OP_entry_value`, I believe we should accept the larger binary size.
This is okay. Thanks. 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. https://github.com/llvm/llvm-project/pull/166202 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
