[RFC] LTO and debug information
Michael Matz
matz@suse.de
Sun Dec 13 20:09:00 GMT 2009
Hi,
On Sun, 13 Dec 2009, Richard Guenther wrote:
> *************** free_lang_data_in_decl (tree decl)
> *** 4380,4408 ****
> }
> }
>
> ! if (TREE_CODE (decl) == PARM_DECL
> ! || TREE_CODE (decl) == FIELD_DECL
> ! || TREE_CODE (decl) == RESULT_DECL)
> ! {
> ! tree unit_size = DECL_SIZE_UNIT (decl);
> ! tree size = DECL_SIZE (decl);
> ! if ((unit_size && TREE_CODE (unit_size) != INTEGER_CST)
> ! || (size && TREE_CODE (size) != INTEGER_CST))
> ! {
> ! DECL_SIZE_UNIT (decl) = NULL_TREE;
> ! DECL_SIZE (decl) = NULL_TREE;
> ! }
> !
> ! if (TREE_CODE (decl) == FIELD_DECL
> ! && DECL_FIELD_OFFSET (decl)
> ! && TREE_CODE (DECL_FIELD_OFFSET (decl)) != INTEGER_CST)
> ! DECL_FIELD_OFFSET (decl) = NULL_TREE;
> !
> ! /* DECL_FCONTEXT is only used for debug info generation. */
> ! if (TREE_CODE (decl) == FIELD_DECL)
> ! DECL_FCONTEXT (decl) = NULL_TREE;
> ! }
Ugh. If you remove this, add an 'FIXME' comment, in case we ever get the
early-debuginfo generation. We do want to nullify these eventually, and
it's sufficiently tricky to free the right things without introducing
strange errors so that we don't want to invest the time to find out the
details again. Right now we still remember, but in one year ... :)
Ciao,
Michael.
More information about the Gcc-patches
mailing list