This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Solaris bootstrap failure
- To: Colin Howell <chowell at redhat dot com>
- Subject: Re: Solaris bootstrap failure
- From: Bernd Schmidt <bernds at cambridge dot redhat dot com>
- Date: Thu, 8 Mar 2001 16:42:10 +0000 (GMT)
- Cc: <gcc at gcc dot gnu dot org>
On Wed, 7 Mar 2001, Colin Howell wrote:
> The problem appears to be in cselib_lookup(), which is supposed to
> find a common subexpression within an insn. The stage1 compiler finds
> one for insn 37 of no_linkage_helper() while the stage2 compiler does
> not. As a result, the insn is changed by the stage1 compiler but not
> by the stage2 compiler. This difference eventually results in the
> stage1 compiler generating an extra instruction.
Good detective work so far. Can you provide more details (rtl or a
description of the equivalence that is found by stage1)?
> Is it OK for us to use a pointer as part of the hash value computation
> in this way? Doing so certainly makes it harder to compare bootstrap
> stages. I'd think that it would also make it harder to compare cross
> compilers for the same target on different hosts.
In theory the layout of the hash table should have no effect on the code.
However, using pointers can lead to problems if there's a bug that makes
us depend on the hash table layout...
Bernd