http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55395



--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-12-04 
15:10:00 UTC ---

(In reply to comment #8)

> OK, the aim was mostly to get rid of large constructors. Is it possible to 
> tell

> when the DECL_INITIAL will be needed?  This problem also exists with LTO 
> where > we do not stream initializers of variables not assigned to a given 
> partition.



It is always used if available and there is no other way to generate the

location info for it (which for vars that were removed from the varpool is

probably always, I bet those aren't assigned memory locations).  The question

is of course if it can successfully generate something out of it or not, but

you can't guess that before it tried.

For the invalid error part of this PR, it would be just important that it

doesn't set DECL_INITIAL to error_mark_node, but some other magic value which

says, this decl had non-zero initializer, but ignore the other details about

it.  Of course to make the debug info more complete you really should keep the

initializer.

Aren't you building mozilla with LTO without -g anyway, given that LTO screws

up debug info so terribly that it isn't useful at all?

Can you come up with some short testcase that would show what kind of large

constructors you care about?

Reply via email to