On Thu, Jul 12, 2018 at 12:29:20PM +0200, Richard Biener wrote: > After my PR86413 fix to always annotate existing lexical block DIEs with > range attributes debuginfo grows significantly in case we previously > had "stale" lexical block DIEs without any variables. > > The following fixes this by eliding those comletely and not emitting > a lexical block DIE for blocks that just contain DECL_INGORED_P > entities. This solves the reported size regression and the > empty lexical block DIEs vanish. > > Bootstrap & regtest running on x86_64-unknown-linux-gnu. > > OK for trunk?
Do you have a proof that BLOCK_NON_LOCALIZED_VAR is ever !DECL_IGNORED_P? I see it is filled with: if ((!optimize || debug_info_level > DINFO_LEVEL_TERSE) && !DECL_IGNORED_P (old_var) && nonlocalized_list) vec_safe_push (*nonlocalized_list, old_var); (twice) in tree-inline.c. Anything else that populates it? Jakub