debug/113488 - DW_AT_abstract_origin to self
commit62b59bc4f70d02a485c527aa3277f4b4010edb6b
authorRichard Biener <rguenther@suse.de>
Fri, 19 Jan 2024 08:50:43 +0000 (19 09:50 +0100)
committerRichard Biener <rguenther@suse.de>
Fri, 19 Jan 2024 09:43:07 +0000 (19 10:43 +0100)
treedb152d33f8345c83d9893e240a3bf9f14bbf1f3c
parent6ce7008cfa1a240895ecca0898e7dbaecd975567
debug/113488 - DW_AT_abstract_origin to self

The new sanity check avoiding creating of DIE refs to self triggers
on the PRs testcase when using -g1 and -ffat-lto-objects as while
early DWARF with -g1 doesn't contain any DIEs for LABEL_DECLs later
cloning will still mark DECLs as in if they would via
dwarf2out_abstract_function calling set_block_origin_self.

Instead of messing with the delicate setup of dwarf2out at this stage
the following simply rectifies things after the fact during LTO
streaming when the decl indicates there's an early DIE but there
isn't fixup that indication.

PR debug/113488
* lto-streamer-in.cc (lto_read_tree_1): When there isn't
an early DIE but there should be, do not pretend there is.
gcc/lto-streamer-in.cc