This is the mail archive of the
mailing list for the GCC project.
Re: small varasm.c improvements
- From: Geoff Keating <geoffk at geoffk dot org>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org, zack at codesourcery dot com
- Date: 13 May 2003 13:52:32 -0700
- Subject: Re: small varasm.c improvements
- References: <email@example.com><200305130201.WAA27960@makai.watson.ibm.com>
David Edelsohn <firstname.lastname@example.org> writes:
> I believe the issue is that we've swapped the special pool entry
> for the original symbol, so there is nothing to prevent the original
> symbol from possibly being deleted because the special pool entry has been
> substituted everywhere. The USE makes sure that the symbol being
> referenced by the pool is not itself deleted. Geoff may have some ideas
> about whether this is fixable, or maybe we just XFAIL it on rs6000 port.
The right thing to do is to give varasm.c more information about
what's going on and what refers to what; then the SET will be
unnecessary. In fact, ideally all the constant pool manipulation that
the rs6000 backend does should be in varasm.c; all it's really trying
to do is have a single constant pool for the entire file rather than
one per function, and refer to all the constants through a pointer table.
- Geoffrey Keating <email@example.com>