[Bug middle-end/50199] [4.7 Regression] wrong code with -flto -fno-merge-constants
rguenther at suse dot de
gcc-bugzilla@gcc.gnu.org
Wed Jan 4 09:32:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50199
--- Comment #7 from rguenther at suse dot de <rguenther at suse dot de> 2012-01-04 09:32:28 UTC ---
On Tue, 3 Jan 2012, hubicka at gcc dot gnu.org wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50199
>
> --- Comment #6 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-01-03 18:06:28 UTC ---
> Hmm, adding CONST_DECLs into varpool would be fun: we would have to ensure that
> most of target machinery is ready to output CONST_DECLs promoted to hidden vars
> by ltrans partitioning + there will be some additional surprises for sure (i.e.
> CONST_DECLs being constructed very late in optimization).
>
> The problem is not specific to ipa-cp, ale ipa-split and inlining can migrate
> same CONST_DECL across function bodies that can end up in different ltrans
> partitions.
>
> I wonder if we should not simply promote CONST_DECLs into initialized const
> vars for this purpose by local tree pass running just before early inliner? I
> don't see much of downsides of this transform at them moment, except for lack
> of sharing of const pool in between early and late const decls.
The problem is we do not have CONST_DECLs at all at the moment but
we have ADDR_EXPRs of STRING_CSTs. I think we should simply ignore this
PR for 4.7 and work on it in the 4.8 timeframe (making the FEs to emit
&CONST_DECL instead of &STRING_CST, how we deal with them wrt the
varpool is a completely different issue).
Richard.
More information about the Gcc-bugs
mailing list