This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch][lto] remove var_decls from the size of structs


> OK.

I needed to pull one extra bit from the Richard's patch:

cp/decl.c (duplicate_decls): Call remove_decl_from_map.
tree.c (remove_decl_from_map): New.

With this addition we bootstrap and regression tests are OK.

OK for the branch?

> Could you investigate why is the C++ FE creating two DECLs with the
> same UID?  I'm hoping that it is a case of a DECL being recycled when
> no longer needed, or something along those lines.
>
> In any event, addressing this
>
> +  /* We should never try to re-insert a decl with the same uid.
> +     ???  The C++ frontend breaks this invariant.  Hopefully in a
> +     non-fatal way, so just overwrite the slot in this case.  */
> +#if 0
> +  gcc_assert (!*slot);
> +#endif
>
> means that we can apply all of Richard's patch in trunk and then
> inherit from LTO.  But for the time being, it's fine to have this
> subset in the LTO branch.

I will try to take a look.

>
> Diego.
>


Cheers,
-- 
Rafael Avila de Espindola

Google Ireland Ltd.
Gordon House
Barrow Street
Dublin 4
Ireland

Registered in Dublin, Ireland
Registration Number: 368047

Attachment: struct-size.patch
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]